1、flask是一个轻量级的python web框架

·1、Flask 依赖两个外部库: Jinja2 模板引擎和 Werkzeug WSGI 套件

·2、安装:

# easy_install flask           安装
# python 测试安装是否成功
>>> import flask

2、增强工具:virtualenv(摘自:http://dormousehole.readthedocs.org/en/latest/installation.html#installation)

如果你使用 Mac OS X 或 Linux ,那么可以使用下面两条命令中任意一条:
$ sudo easy_install virtualenv
或更高级的:
$ sudo pip install virtualenv
上述命令中的任意一条就可以安装好 virtualenv 。也可以使用软件包管理器,在 Ubuntu 系统中可以试试: $ sudo apt-get install python-virtualenv

使用:

root@pc:/# mkdir flask
root@pc:/# cd flask/
root@pc:/flask# virtualenv venv 创建一个包含venv文件夹的项目文件夹:
New python executable in venv/bin/python
Installing setuptools, pip...done.
root@pc:/flask# ls
venv root@pc:/flask# . venv/bin/activate 每次使用项目时,必须先激活相应的环境

3、"Hello World"

(venv)root@pc:/flask# vim hello.py

编辑内容:

 #coding=utf-
from flask import Flask #导入flask类
app = Flask(__name__) #生成该类的一个实例 @app.route('/') #调用一个app的route方法
def hello_work(): #定义一个处理方法
return '<h1>hello world</h1>' if __name__ == '__main__': #确保服务器只会在使用python解释器运行代码的情况下运行
app.run()

保存退出,并执行:

root@pc:/flask# python hello.py
* Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)
127.0.0.1 - - [/Apr/ ::] "GET / HTTP/1.1" -

根据提示,打开浏览器,输入网址:http://127.0.0.1:5000/

4、设置网络中其它电脑也可以访问:

修改app.run()为:

 app.run(host='0.0.0.0')     #用host参数,设定全网段可以访问

保存,ctrl + shift + T打开另一个终端,执行:

root@pc:/flask# python hello.py
* Running on http://0.0.0.0:5000/ (Press CTRL+C to quit)

可以看到ip地址变了,现在可用自己的ip进行访问:

root@pc:/# ifconfig
eth0 Link encap:以太网 硬件地址 ::e6:d0:d5:2e
inet 地址:192.168.168.80 。。。。。

5、调试模式:绝对不能在生产环境中使用调试模式

(原因:它允许执行任意代码,这样会成为一个重大安全隐患)

打开调试模式的第一种方式:

app.debug = True     #第一种方式:在应用对象上设置标志                                     
app.run(host='0.0.0.0') #用host参数,设定全网段可以访问

对应的:

root@pc:/flask# python hello.py
* Running on http://0.0.0.0:5000/ (Press CTRL+C to quit)

第二种方式:

app.run(debug=True,host='0.0.0.0')   #第二种方式:作为参数传递给run方法 

对应的:

root@pc:/flask# python hello.py 
 * Running on http://0.0.0.0:5000/ (Press CTRL+C to quit)

至此,整个程序修改为:

    #coding=utf-
from flask import Flask #导入flask类
app = Flask(__name__) #生成该类的一个实例 @app.route('/') #调用一个app的route方法
def hello_work(): #定义一个处理方法
return '<h1>hello world</h1>' if __name__ == '__main__': #确保服务器只会在使用python解释器运行代码的情况下运行
#app.debug = True #第一种方式:在应用对象上设置标志
#app.run(host='0.0.0.0') #用host参数,设定全网段可以访问
app.run(debug=True,host='0.0.0.0') #第二种方式:作为参数传递给run方法

详情请看参考网址:

http://dormousehole.readthedocs.org/en/latest/

http://docs.jinkan.org/docs/flask/quickstart.html#a-minimal-application

flask安装及第一个程序的更多相关文章

  1. [视频解说]Java(JDK的下载安装及第一个程序执行)

    (JDK的下载安装及第一个程序执行) 内容:Java JDK 的安装以及HelloWorld 程序的执行 欢迎童鞋们前往围观 http://v.youku.com/v_show/id_XODA3Mzk ...

  2. Conda安装及第一个py程序

    Conda安装及第一个py程序 安装Conda 下载安装 在Anaconda官网下载Anaconda 打开Conda安装程序 设置好安装目录(这个一定要记好,后边要用),比如我的目录就是 D:\Pro ...

  3. cesium安装及第一个示例

    cesium安装及第一个示例 一.环境要求 二.浏览器要求 三.安装node.js 四.下载cesium包(地址为https://cesiumjs.org) 包括了 五.在你的项目里引入相关js与cs ...

  4. Java(1)开发环境配置及第一个程序Hello World

    作者:季沐测试笔记 原文地址:https://www.cnblogs.com/testero/p/15201468.html 博客主页:https://www.cnblogs.com/testero ...

  5. Python初学者第一天 Python安装及第一个Python程序

    Python基础: 1day: 1.Python基础: A.编程语言介绍:     a. 计算机只能理解0和1.编程即写一段按照一定规则写代码,让计算机帮你干活:     b.机器语言:最底层的语言, ...

  6. go语言开发环境安装及第一个go程序

    下载Go语言开发包 大家可以在Go语言官网(https://golang.google.cn/dl/)下载 Windows 系统下的Go语言开发包,如下图所示. 安装Go语言开发包 双击我们下载好的G ...

  7. Java和eclipxe的安装以及第一个程序

    首先我们需要下载java开发工具包JDK,下载地址:http://www.oracle.com/technetwork/java/javase/downloads/index.html 注意事项:安装 ...

  8. 【win】【qt5安装】【qt5.5.1安装及第一个示例make错误】

    [前言] 昨天按照需求将qt程序从linux系统移植到win上使用(其实有点缪论了,本人linux用的中标麒麟系统对于发布发布系统版本麒麟(注:以下用麒麟代替中标麒麟,什么银河麒麟,优麒麟的,我现在只 ...

  9. [置顶] Objective-C开发环境介绍以及Cocoa,以及第一个程序

      Objective-C 起源与发展 Brad J. Cox designed the  Objective-C language in the early 1980 . 布兰德于1980年设计的  ...

随机推荐

  1. 网络流 HDU 3605

    建图   源点    ->   1024类人   ->   星球   ->     汇点 权             每类人数目       星球容量     星球容量 列举 0~1 ...

  2. mysql-利润set变量模拟分组查询每组中的第N条数据

    查询思路: 很多时候想在使用group by时想查询group by的每一组中的第N条数据,而取这些数据时往往按如下方式去执行则很慢 ; 按如上方式,对于数据10000左右的表就已经很吃不消. 或已拼 ...

  3. 管理系统UI: System Bar 详解

    Google原文: http://developer.android.com/training/system-ui/index.html 管理系统UI之一:淡化System Bar(Dimming t ...

  4. Lyaer 单弹出层获取数据

    案例完整代码如下 var cls = layer.open({                title: "请选择被换班人",                type: 2,   ...

  5. 代理、通知、KVO的应用

    实现下图效果,每点击一次cell的“加号”或者“减号”,就可以让“底部view”的总价进行对应的增加或者减少. 下图是实际运行效果图: 图(1) 因为“底部UIView”需要一直显示在底部.如果把底部 ...

  6. PL/SQL连接Oracle客户端步骤

    首先,安装oracle,再安装plsql 打开plsql——>选择“首选项(preferences)”——>输入oracle客户端路径 如下图:

  7. BZOJ 1115: [POI2009]石子游戏Kam

    1115: [POI2009]石子游戏Kam Time Limit: 10 Sec  Memory Limit: 162 MBSubmit: 883  Solved: 545[Submit][Stat ...

  8. CommonJS/AMD/CMD/UMD概念初探

    1.CommonJS是一种规范,NodeJS是这种规范的实现. 1.1.CommonJS 加载模块是同步的,所以只有加载完成才能执行后面的操作. 参考: http://www.commonjs.org ...

  9. Bzoj2763 [JLOI2011]飞行路线

    Time Limit: 10 Sec  Memory Limit: 128 MBSubmit: 2651  Solved: 1004 Description Alice和Bob现在要乘飞机旅行,他们选 ...

  10. RCE via XStream object deserialization && SECURITY-247 / CVE-2016-0792 XML reconstruction Object Code Inject

    catalogue . Java xStream . DynamicProxyConverter . java.beans.EventHandler . RCE via XStream object ...