首页 新闻 会员 周边

flask入门即结束.

1
悬赏园豆:100 [已解决问题] 解决于 2020-07-16 23:54

今天刚学这个flask,入门就卡死,安装的是pip install flask,和python3.7
下面是代码:
from flask import Flask
app=Flask(name)
@app.route('/')
def index():
return "hello world!"
if name == 'main':
app.run()

也安装了IIS,为什么我的这个运行flask会不出现Running on http://127.0.0.1?

其他的都会出现。

罗素5188的主页 罗素5188 | 初学一级 | 园豆:114
提问于:2020-07-11 23:11
< >
分享
最佳答案
0

我找到了两个我能发现的问题(我用的是Python3.8.3正式发行版本):

 

 

第一个是“app=Flask(name)”的“name”没有定义,Python的内部变量“name”应该是“__name__”(如果你的代码没有抛出NameError异常,就不是这个问题,并且下面所有的“__name__”变量名称都得改成“name”

 

第二个问题是倒数第二行“if name == 'main':”的“main”并不是“__main__”,所以“ __name__ == 'main' ”返回的值则永久为False,自然就不会执行下面的“app. run()”,所以服务器没有创建成功,也就更不会打印什么Running on http://127.0.0.1:5000了。

 

 

如果我写的你看不懂,那么推荐你去看廖雪峰的官方文档,网址:

https://www.liaoxuefeng.com/wiki/1016959663602400/1017806472608512

 

扩展:

“__name__”变量储存的是当前程序是否为被调用,当程序为非调用时,“__name__”变量则为“__main__”(顾名思义为主程序),如果是被调用情况,则不为“__mian__”(具体是什么,我也不清楚)。

收获园豆:100
平凡的Python学者 | 菜鸟二级 |园豆:326 | 2020-07-12 14:42

最后的代码应该是这样的:(其实不需要if,因为有的时候就会因为if后面的条件写错了报错,而且如果以后的程序需要调用这个程序时,发现不运行,并且半天都找不到原因,所以我去掉了if,想加也可以加)

from flask import Flask

app = Flask(__name__)
 
@app.route('/')
def index():
    return ' hello word '

app.run()

 

平凡的Python学者 | 园豆:326 (菜鸟二级) | 2020-07-13 15:54

@平凡的Python学者: 我代码是对的,只是这里没正确,应该是环境搞号,到现在还不会搞。。。。可以指导下环境怎么安装不?

罗素5188 | 园豆:114 (初学一级) | 2020-07-16 23:58

@罗素5188: 方便加个博客园的临时会话吗

平凡的Python学者 | 园豆:326 (菜鸟二级) | 2020-07-17 08:30

@平凡的Python学者: 怎么临时会话 你给我微信 我请教你。谢谢

罗素5188 | 园豆:114 (初学一级) | 2020-07-17 09:42

@罗素5188: 我已经将微信号用博客园的短消息发给你了,请查收。

平凡的Python学者 | 园豆:326 (菜鸟二级) | 2020-07-17 10:37

@平凡的Python学者: 加过了 通过下 哥们!!谢谢

罗素5188 | 园豆:114 (初学一级) | 2020-07-17 10:38
其他回答(1)
1
from flask import Flask
app=Flask(__name__)
@app.route('/')
def index():
    return "hello world!"

if __name__ == '__main__':
    app.run()
小小咸鱼YwY | 园豆:3210 (老鸟四级) | 2020-07-13 13:36
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册