python可以开发web程序吗_如何用Python Flask来制作第一个Web程序?

最近一直在研究Flask这个东西,想把学习的过程分享给大家

那现在开始吧

我真的万万没想到bilibili专栏不能导入markdown文件

委屈各位了,高清无码PDF见

链接:https://pan.baidu.com/s/1eyqbl0FKZV10xmdYSUIMtA

提取码:uzjw

先插入封面5c387c6eab7f3a79d4773a3d0cf3aec47bcd46b2.jpg

三分钟Flask从入门到不放弃

第一分钟 - 名词解释Python:是一种解释型脚本语言,可以应用于诸多领域。

Flask:是一个使用 Python 编写的轻量级 Web 应用框架。

Web:一种基于超文本和HTTP的、全球性的、动态交互的、跨平台的分布式图形信息系统。天天网上冲浪你能不知道Web是啥???

第二分钟 - 安装Flask

直接执行pip install Flask

更换安装源

如果你的网络条件不是很好的话建议临时使用国内安装源

临时使用 来自清华大学开源软件镜像站pip install -i https://pypi.tuna.tsinghua.edu.cn/simple pip -U

再次执行 pip install Flask

如果你没有看到一些红色的信息或者是上面写满了ERROR

那么恭喜你你已经成功安装了Flask框架

第三分钟 - 编写第一个Flask程序

找个文件夹(建议不要中文路径),

新建文本文件

写入以下程序代码

保存更改后缀名为.py

比如这样2ad9016758aba2ee2b99ca321d7760d4aa22b757.png

这是一个最小的Flask应用程序

from flask import Flask

app = Flask(__name__)

@app.route('/')

def hello_world():

return '你好,世界!'

如何运行它?优雅端庄式:

第一步:首先打开你的终端命令行

第二步:cd到存放这个文件的目录

第三步:设置一个临时环境变量FLASK_APPLinux&Mac: export FLASK_APP=hello.py

Windows: set FLASK_APP=hello.py

PowerShell

(Windows里那个蓝色的命令行): $env:FLASK_APP = "hello.py"0b62edab7ae5e6abca9a261f1b3b0509ef0890ac.png

做好这些确认无误后就可以使用 flask run命令来开启一个flask的测试服务器了

你还可以使用python -m fkask run来开启这个服务器f2a9b1b51931ef8f426bb940cd0c47bf87eff660.png

如果你希望它停下来的话请按Ctrl+c

`2 简单粗暴式:

在文件的最下方补充一下代码

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

cd到你的项目目录

像执行普通文件一样去执行它

python app.pyae8ea16008f34216794c50a0e52e5bf4e50c472b.png

三分钟倒计时已经结束了,那现在又发生了什么?

刚刚的操作已经让我们使用flask运行起来了一个测试用的web服务器,那我们如何去访问它?

ad013b94197767af73cb68d75ceca187a31ed793.png

请注意Flask启动时为我们所打印出来的信息,将他粘贴到浏览器

77a688c1e2b4f6120f1afb0e507c840265553dad.png

很好,就是这样

再次打开我们的代码,试图去更改我们能看懂的文字

from flask import Flask

app = Flask(__name__)

@app.route('/')

def hello_world():

return "Hello"

if __name__ == '__main__':

app.run()

将服务器关闭再次开启Press CTRL+C to quit6d269218805379c4e24103079b8933ed6443a790.png

很好,他没有让我们操心,这是一台懂事的服务器

让我们加上注释来康康(看看)发了什么

# 从flask模块中导入Flask类

from flask import Flask

# 将Flask类实例化出来对象app

app = Flask(__name__)

# 使用了route装饰器来装饰hello_world()函数规定哪个链接可以执行这个函数

# 这里的斜杠就是我们的根目录http://127.0.0.1:5000/

@app.route('/')

def hello_world():

# 函数的返回值就是我们最终要在浏览器中看到的信息

return "Hello"

# 如果这个文件被执行的时候不是以模块的方式被导入的话就执行下面的东西

if __name__ == '__main__':

# 执行这个方法之后就会运行我们的测试服务器了

app.run()首先我们导入了 Flask 类。 该类的实例将会成为我们的应用。

接着我们创建一个该类的实例。

第一个参数是应用模块或者包的名称。

他的主要作用是告诉flask我们当前是以文件方式进行执行还是按照模块的方式进行导入。只有这样flask应用才能准确无误的找到这个模块目录下的其他需要的文件.

接下来我们使用了route装饰器来装饰了hello_world()

这个装饰器的主要作用就是告诉flask应用哪个路径被访问的时候执行下面的函数,这个函数的返回值就是我们在浏览器中看到的页面

下面的内容则是为了我们可以直接执行这个python文件所添加的内容,这样省去了在命令行设置环境变量和执行的时间上文在"优雅端庄式"启动服务器时,app.py是作为模块被其他程序导入的,__name__就是这个模块的名称

"简单粗暴式"则是直接执行了这个文件,__name__就是"__main__"

怎样让家里的所有人看到我们的成果

众所周知(不知道请自行百度关键词"本地回环地址")127.0.0.1这个地址只能在我们自己的机器上使用,要想他人访问我们的服务器就必须让他人知道我们的ip地址

可以在windows命令行中使用ipconfig命令来看到自己的ip地址bda0e7bf39116b2639bad7f41428e8879d266634.png

如果你的手机和电脑连接的是同一台路由器的话你也许可以试试拿起手机去访问这个地址,

请注意:这个测试服务器所使用的端口号为5000bbf28f550f572ef07722b2e2bffb3532eae0bcfa.png

访问的同时请带上它

Sorry,这样直接访问是访问不到的41e32061bae00e44443c941c67806ef7e540bf96.png

Q:如何才能让别人也能访问到这个地址

A:告诉服务器,你要让哪些地址可以被访问

怎么做呢?

使用命令行启动时:

flask run --host="192.168.31.200"e3368826f1ff386e7661d046b181edd9bd3560d6.png

那我想用简单磁暴的启动方法怎么办呢?

if __name__ == '__main__':

app.run(host="192.168.31.200")

这样就搞定了

这样只是监听了特定的ip地址可以被访问,那如果我电脑上有多个ip呢?

更加加单磁暴的方法

flask run --host="0.0.0.0"

比着葫芦画瓢:

在代码中添加

app.run(host="0.0.0.0")

这样你就可以在任何地方打开这个页面了

a819bbae83b71f9101bc8e933a037ae46f39493c.png

如果我不想输入这个烦人的端口号又该如何修改它呢?

众所周知Http服务默认端口号是80

我们将端口设置为80就可以抛弃它了

简单粗暴式:

if __name__ == '__main__':    # 执行这个方法之后就会运行我们的测试服务器了    app.run(host="0.0.0.0", port=80)

比葫芦画瓢式:

flask run --host=0.0.0.0 --port=80

先停一下

虽然flask被称为"微"框架,但是实际上flask中的内容是非常非常多的.我们也可以使用围绕flask开发的一些扩展来增强flask的功能

这些内容不是一句两句可以讲得完的,我们需要更多的时间去了解它们

所有,今天就先介绍到这里

小结:今天够干啥了?

今天主要是建立起了flask开发环境,安装了flask框架,介绍了flask的最小应用是怎样构成的,然后学会了更改flask应用监听的ip地址和端口号

下次,我会介绍一下flask的路由和模板的使用

下次见

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值