python flask 基础入门
1. Flask 中的Hello World!
在使用pycharm创建一个Flask项目后,将会默认创建一个flask的app,这里来讲下每行代码表示的意义,代码入下
from flask import Flask # 导入flask模块 如果没有这个模块需要使用pip install flask 进行安装
app = Flask(__name__) # 实例化一个flask实例,flask会根据传入参数,确定应用的路径,静态文件和模板文件的默认路径
@app.route('/') # 应用的路由部分
def hello_world():
return 'Hello World!' # 该路由指向的函数部分
if __name__ == '__main__':
app.run() # 运行flask应用
运行程序后在浏览器输入http://localhost:5000就可以看到Hello World!,这就是一个最简单的Flask应用,使用ctrl+c来停止服务。
注意:
1.在使用flask编写应用时,如果对代码进行了修改,需要手动的重启服务才会生效,Flask有一个调试模式可以优化这个问题,并且在启动了调试支持后,不仅修改代码后服务会自动重启,而且代码在出现错误后会提供一个有用的调试器,调试支持允许执行代码,存在安全风险,决不能用于生产环境(添加调试支持的两种方法:1.app.debug=True;2.app.run(debug=True))
2.在使用app.run()启动应用后,会默认监听127.0.0.1的5000端口,如果想让外部机器访问只需要在run方法中加入参数来指定服务运行的IP、端口,线程进程等。run方法可以添加很多参数,后期继续讲。
2.Flask路由
flask的路由系统就是一个@app.route的装饰器,在这个装饰器中可以填入多个参数,这里的route装饰器就是把一个视图绑定到URL上。例如:
# 利用路由系统给URL绑定不同的视图函数
@app.route('/')
def hello_world():
return 'Hello World!'
@app.route('/user')
def user():
return 'Hello User!'
除此之外,Flask也可以动态的构造URL的特定部分,把动态的值传递给视图函数来使用,例如:
@app.route('/user/<username>') # 接收一个动态的值传递给视图函数,视图函数又将动图数据返回给前端
def username(username):
return 'Hello {username}'.format(username=username)
# 同时也可以指定一个可选的转化器,指定动态值的类型
# 例子:<int:age>
# int 接受整数
# float 接受浮点数
# path 接受带有斜线的字符串
asdfasdf阿斯蒂芬sdfasdf
python flask 基础入门的更多相关文章
- python爬虫-基础入门-python爬虫突破封锁
python爬虫-基础入门-python爬虫突破封锁 >> 相关概念 >> request概念:是从客户端向服务器发出请求,包括用户提交的信息及客户端的一些信息.客户端可通过H ...
- python爬虫-基础入门-爬取整个网站《3》
python爬虫-基础入门-爬取整个网站<3> 描述: 前两章粗略的讲述了python2.python3爬取整个网站,这章节简单的记录一下python2.python3的区别 python ...
- python爬虫-基础入门-爬取整个网站《2》
python爬虫-基础入门-爬取整个网站<2> 描述: 开场白已在<python爬虫-基础入门-爬取整个网站<1>>中描述过了,这里不在描述,只附上 python3 ...
- python爬虫-基础入门-爬取整个网站《1》
python爬虫-基础入门-爬取整个网站<1> 描述: 使用环境:python2.7.15 ,开发工具:pycharm,现爬取一个网站页面(http://www.baidu.com)所有数 ...
- 大牛整理最全Python零基础入门学习资料
大牛整理最全Python零基础入门学习资料 发布时间:『 2017-11-12 11:56 』 帖子类别:『人工智能』 阅读次数:3504 (本文『大牛整理最全Python零基础入门学习资料 ...
- Python+Selenium基础入门及实践
Python+Selenium基础入门及实践 32018.08.29 11:21:52字数 3220阅读 23422 一.Selenium+Python环境搭建及配置 1.1 selenium 介绍 ...
- Python 零基础入门
Python 零基础入门 1.1 Python介绍 Python 是一门优雅且健壮的面向对象解释型计算机程序编程语言,具有面向对象.可升级.可扩展.可移植 语法简洁清晰易学.易读写.易维护.健壮性.通 ...
- 猜数字和飞机大战(Python零基础入门)
前言 最近有很多零基础初学者问我,有没有适合零基础学习案例,毕竟零基础入门的知识点是非常的枯燥乏味的,如果没有实现效果展示出来,感觉学习起来特别的累,今天就给大家介绍两个零基础入门的基础案例:猜数字游 ...
- Python运算符 - Python零基础入门教程
目录 一.算术运算符 二.赋值运算符 三.比较运算符 四.运算符的优先等级 五.重点总结 六.猜你喜欢 零基础 Python 学习路线推荐 : Python 学习目录 >> Python ...
随机推荐
- SQL之Left Join 关联条件的探讨
在测试工作中,有时需要测试数据库数据经过sql计算后的结果是否满足某一功能查询得到的返回值. 针对某些需要功能需要联查多张表,此时 关联 的作用就异常重要了,而针对多表关联,其中 关联条件的重要性不言 ...
- 函数式编程之foldLeftViaFoldRight
问题来自 Scala 函数式编程 一书的习题, 让我很困扰, 感觉函数式编程有点神学的感觉.后面看懂之后, 又觉得函数式编程所提供的高阶抽象是多么的强大. 这个问题让我发呆了好久, 现在把自己形成的想 ...
- springboot多模块项目下,子模块调用报错:程序包xxxxx不存在
今天在用springboot搭建多模块项目,结构中有一个父工程Parent 一个通用核心工程core 以及一个项目工程A 当我在工程A中引入core时,没有问题,maven install正常 当我 ...
- Docker学习笔记 - Docker部署nginx网站
一.制作 nginx 镜像 1.下载配置文件 mkdir /opt/nginx_docker && cd /opt/nginx_docker mkdir nginx && ...
- hadoop2.7.3+spark2.1.0+scala2.12.1环境搭建(1)安装jdk
一.文件准备 下载jdk-8u131-linux-x64.tar.gz 二.工具准备 2.1 Xshell 2.2 Xftp 三.操作步骤 3.1 解压文件: $ tar zxvf jdk-8u131 ...
- git初试
在gitLab上新建一个项目,creat项目文件之后,进入到项目的路径之后,复制命令git clone ‘git@gitlab.touzila.com:xiacaixiang/gitgitTest1. ...
- MySQL/上
MySQL操作/上 一.视图 视图表是一个虚拟表(非真实存在),其本质是[根据sql语句获取动态的数据集,并为其命名],用户使用表只需使用(名称)即可获取结果集,并可以将其当做表来使用. 1.创建视图 ...
- POJ-2485 Highways---最小生成树中最大边
题目链接: https://vjudge.net/problem/POJ-2485 题目大意: 求最小生成树中的最大边 思路: 是稠密图,用prim更好,但是规模不大,kruskal也可以过 #inc ...
- Menu-右键弹出菜单
#右键弹出菜单 from tkinter import * root=Tk() def callback(): print('我被调用了') menubar =Menu(root) menubar.a ...
- CSS3 3D立方体效果
<!DOCTYPE HTML><html><head><meta http-equiv="Content-Type" content=&q ...