第一个flask项目代码详解

18 篇文章 0 订阅

上一篇我们创建了第一个简单的flask应用程序,这一篇我们来看一下,这个最简单的应用程序都做了哪些事

1.      第一行代码,导入了flask类

from flask import Flask

2.      第二步创建了Flask类的实例

app = Flask(__name__)

这行代码里有一个参数__name__,这个参数用到告诉flask你的application的名字,官方有一句话:

If you are using a single module,__name__ is always the correct value. If youhowever are using a package, it’s usually recommended to hardcode the name ofyour package there.

意思就是说,如果是单一的应用,用__name__就可以了,如果是一个应用程序包,就hardcode一个名字给这个参数。比如:

app = Flask(“myApp”)

由于目前我们的应用都相对简单,所以统一使用__name__作为参数。

3.      使用route()修饰器注明通过什么样的url可以访问我们的函数,同时在函数中返回要显示在浏览器中的信息

@app.route('/')
def hello_world():
   
return 'HelloWorld!'

可以通过修改route()修饰器实现不同的url解析,比如,我们改成如下的样子

@app.route('/index')
def hello_world():
   
return 'HelloWorld!'

再次运行程序,访问/index才能显示出hello world, 如图所示:

4.      最后调用run()方法,运行flask web应用程序

if __name__ == '__main__':
    app.run()

其中if __name__==’__main__’的意思是,如果此文件是直接运行的才会执行app.run()这个方法,如果是通过import在其它py文件中调用的话是不会执行的

比如我们修改code.py中的hello_world方法,如下:

@app.route('/index')
def hello_world():
    if __name__=='main':
        return 'Hello World!'
    else:
        return "hello my name is "+__name__

即当__name__为__main__时还是执行原来的逻辑,返回hello world,如果不是则输出此时的名字。

然后我们新建一个sub.py文件然后导入code.py,并且执行hello_world方法

import Code

def CallCodeFun():
    result = Code.hello_world()
    print(result)

CallCodeFun()

   执行sub.py后,输入结果如下:


此时的__name__是Code而不是__main__

而此时,在sub.py中加一句print(__name__)可以发现sub.py中的__name__变成了__main__

由此我们可以得出__name__ 如果是 __main__ 那么代表他是一个入口文件,直接执行的

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值