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 基础入门的更多相关文章

  1. python爬虫-基础入门-python爬虫突破封锁

    python爬虫-基础入门-python爬虫突破封锁 >> 相关概念 >> request概念:是从客户端向服务器发出请求,包括用户提交的信息及客户端的一些信息.客户端可通过H ...

  2. python爬虫-基础入门-爬取整个网站《3》

    python爬虫-基础入门-爬取整个网站<3> 描述: 前两章粗略的讲述了python2.python3爬取整个网站,这章节简单的记录一下python2.python3的区别 python ...

  3. python爬虫-基础入门-爬取整个网站《2》

    python爬虫-基础入门-爬取整个网站<2> 描述: 开场白已在<python爬虫-基础入门-爬取整个网站<1>>中描述过了,这里不在描述,只附上 python3 ...

  4. python爬虫-基础入门-爬取整个网站《1》

    python爬虫-基础入门-爬取整个网站<1> 描述: 使用环境:python2.7.15 ,开发工具:pycharm,现爬取一个网站页面(http://www.baidu.com)所有数 ...

  5. 大牛整理最全Python零基础入门学习资料

    大牛整理最全Python零基础入门学习资料 发布时间:『 2017-11-12 11:56 』     帖子类别:『人工智能』  阅读次数:3504 (本文『大牛整理最全Python零基础入门学习资料 ...

  6. Python+Selenium基础入门及实践

    Python+Selenium基础入门及实践 32018.08.29 11:21:52字数 3220阅读 23422 一.Selenium+Python环境搭建及配置 1.1 selenium 介绍 ...

  7. Python 零基础入门

    Python 零基础入门 1.1 Python介绍 Python 是一门优雅且健壮的面向对象解释型计算机程序编程语言,具有面向对象.可升级.可扩展.可移植 语法简洁清晰易学.易读写.易维护.健壮性.通 ...

  8. 猜数字和飞机大战(Python零基础入门)

    前言 最近有很多零基础初学者问我,有没有适合零基础学习案例,毕竟零基础入门的知识点是非常的枯燥乏味的,如果没有实现效果展示出来,感觉学习起来特别的累,今天就给大家介绍两个零基础入门的基础案例:猜数字游 ...

  9. Python运算符 - Python零基础入门教程

    目录 一.算术运算符 二.赋值运算符 三.比较运算符 四.运算符的优先等级 五.重点总结 六.猜你喜欢 零基础 Python 学习路线推荐 : Python 学习目录 >> Python ...

随机推荐

  1. MobileNet_v2

    研究动机: 神经网络彻底改变了机器智能的许多领域,实现了超人的准确性.然而,提高准确性的驱动力往往需要付出代价:现代先进网络需要高度计算资源,超出许多移动和嵌入式应用的能力. 主要贡献: 发明了一个新 ...

  2. python小练习之二

    title: python小练习之二 tags: 新建,模板,小书匠 grammar_cjkRuby: true --- python小练习之二 需求:实现用户登录,用户名和密码保存到文件里,连续输入 ...

  3. http客户端请求及服务端详解

    http客户端请求及服务端详解 引言 HTTP 是一个属于应用层的面向对象的协议,由于其简捷.快速的方式,适用于分布式超媒体信息系统.它于1990年提出,经过几年的使用与发展,得到不断地完善和 扩展. ...

  4. JavaScript 实现二叉树

    JavaScript 实现二叉树: // JavaScript 实现二叉树 function BinaryTree () { var Node = function (key) { this.key ...

  5. GIT的安装及命令使用

    http://blog.jobbole.com/78960/ 因此:多人协作工作模式一般是这样的: 首先,可以试图用git push origin branch-name推送自己的修改. 如果推送失败 ...

  6. istio入门(01)istio的优势在哪里?

    Istio能做什么?Istio 试图解决微服务实施后面临的问题.Istio 提供了一个完整的解决方案,对整个服务网格行为洞察和操作控制,以满足微服务应用程序的多样化需求. Istio在服务网络中提供了 ...

  7. webpack打包性能优化

    1. 使用 gzip 压缩打包后的 js 文件 这个方法优化浏览器下载时的文件大小(打包后的文件大小没有改变) webpack.config.prod.js 中 var CompressionWebp ...

  8. 电脑上的安卓系统——PhoenixOS浅度体验

    前言 其实这篇关于PhoenixOS的浅度评测在几个月前就准备发了,当时是刚看到新闻说Android 7.0 x86的正式版刚刚发布,于是就下载来安装一番,结果.....体验极差= =,只能用这4个字 ...

  9. 深入浅出Lua虚拟机

    欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~ 作者:郑小辉 | 腾讯 游戏客户端开发高级工程师 写在前面:本文所有的文字都是我手工一个一个敲的,以及本文后面分享的Demo代码都是我一行一 ...

  10. c#:ThreadPool实现并行分析,并实现线程同步结束

    背景: 一般情况下,经常会遇到一个单线程程序时执行对CPU,MEMORY,IO利用率上不来,且速度慢下问题:那么,怎么解决这些问题呢? 据我个人经验来说有以下两种方式: 1.并行.多线程(Parall ...