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. Django-rest-framework源码分析----认证

    一.前言 1.1.安装 两种方式: github pip直接安装 pip install django-rest-framework 1.2.需要先了解的一些知识 理解下面两个知识点非常重要,djan ...

  2. WebAPI 跨域解决方案.

    先下载支持跨域的.dll,然后using System.Web.Http.Cors. 我把webapi解决方案部署到IIS上了.测试过后可以解决跨域. 方案一(用了*号,这样有安全隐患.): 直接在w ...

  3. django报错invalid literal for int() with base 10: ''

    这种错误是因为模型类中某个字段的条件约束为int类型,但是给了一个字符串类型,所以报错,找到那个模型类的字段,并对应修改就好了.

  4. pymysql安装和使用

    一.pymysql安装 安装mymysql前请确认python环境已经准备好,在之前的博文http://www.cnblogs.com/newzol/p/8682176.html有说明pythonwe ...

  5. Python内置函数(11)——complex

    英文文档: class complex([real[, imag]]) Return a complex number with the value real + imag*1j or convert ...

  6. C# Bootstrap table之 分页

    效果如图: 一.声明talbe <div class="container"> <table id="table" class="t ...

  7. Oracle复合B*tree索引branch block内是否包含非先导列键值?

    好久不碰数据库底层细节的东西,前几天,一个小家伙跑来找我,非要说复合b*tree index branch block中只包含先导列键值信息,并不包含非先导列键值信息,而且还dump了branch b ...

  8. JavaScript中的单体模式四种实现方式

    /* 1 简单单体 */ var Singleton = { attr1: 1 , method1:function(){ //do sth } }; alert(Singleton.attr1); ...

  9. ActiveMQ学习系列(二)----生产者客户端(java)

    上文主要简单地将activeMq搭建了起来,并且可以用web console去登录查看相关的后台功能. 本文将学习如何用java语言实现一个生产者客户端,主要参考了以下链接: http://activ ...

  10. django知识回顾

    一.web框架 1.web框架本质 众所周知,对于所有的web应用,本质上其实就是一个socket服务端,用户的浏览器其实就是一个socket客户端 1.浏览器(socket客户端) 2.发送IP和端 ...