window 10  python 3 安装flask

首先打开cmd命令执行窗口切换到Python安装目录的Script,输入pip出现以下页面

这里我们使用virtualenv虚拟开发环境

为什么使用virtualenv?
  1、使用不同应用开发环境独立开发
  2、环境升级不影响其他应用,也不会影响全局的Python环境,虚拟环境就是讲全局环境做一个私有的复制
  3、它可以防止系统中出现包管理混乱和版本的冲突
安装virtualenv
pip install virtualenvwrapper-win
 

创建一个虚拟环境 flask-env

pychram 添加 flask  File--Default Settings(默认设置)--Project Interpreter 
 创建完成后,flask_demo.py是这个项目的主程序
#coding=utf-8
#从flask这个包中导入Flask类,这个类时核心项目
from flask import Flask
#创建一个Flask对象,传递__name__参数
#__name__参数作用
#1.可以规定模板和静态文件的查找路劲
#2.以后一些插件报错了,可以通过这个参数找到具体的错误位置
app=Flask(__name__) #创建一个web运用
#@app.route 是一个装饰器
#@app.route("/")就是将url中的/映射到hello_world 这个视图函数上面
#@当你访问网址/目录的时候,会执行hello_world函数,然后这个函数的返回值给浏览器 @app.route("/") # 定义路由(Views),可以理解为定义页面的url
def hello_wold():
return "这是用Python+Flask 搞出来的" # 渲染页面
#如果这个文件是作为主文件允许,那么执行app.run()方法,即启动网站
#app.run()时flask钟的一个测试应用服务器
if __name__ =='__main__':
app.run(host='127.0.0.1',port=8080,debug=True) # 运行,指定监听地址为127.0.0.1:8080

使用pycharm启动项目:Run-->Run...-->my_flask, 默认启动的端口是5000,通过浏览器访问http://127.0.0.1:5000,如果我们不想使用默认的5000端口,可以给app.run()传递一个port参数,比如8000端口

app.run(host='127.0.0.1',port=8080)

更改绑定地址

默认只绑定了127.0.0.1,如果我们想让局域网其他电脑也能够方法,就需要绑定到本机其他ip,我们可以绑定0.0.0.0

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

debug模式

在开发过程中,我们需要开启debug模式,如果出现异常,浏览器会显示错误信息及位置,方便开发者调试

开启debug模式还有个好处就是:当我们修改完代码,按ctrl + s保存代码后会自动重启服务

开启debug模式方法1:

在app.run()方法添加参数debug=True

app.run(host='127.0.0.1',port=8080,debug=True) # 运行,指定监听地址为127.0.0.1:8080

开启debug模式方法2:

app = Flask(__name__)
app.debug = True

开启debug模式方法3:

app = Flask(__name__)
app.config.update(DEBUG=True)

开启debug模式方法4:

在项目下面单数创建一个配置文件config.py,里面就可以写配置信息了,这里我只需要写一行

DEBUG=True

然后我们需要在主程序my_flask.py中导入这个config,并且配置使用它来作为配置

import config
...
app.config.from_object(config)
...

如果没有开启debug模式,则是单纯的显示内部服务器错误,这样不利于我们排查

其实还有另外一种方式: 使用app.config.from_pyfile的方式加载配置文件

这种方式不需要import, 直接使用app.config.from_pyfile('config.py')就可以了, 注意这个地方,必须要写文件全名,后缀名不能少!

1、这种方式加载配置,不局限于只能使用py文件,普通的txt文件同样适用

2、这个方式,可以传递silent=True,当这个配置文件没有找到的时候,不会抛出异常

app.config.from_pyfile('config.txt', silent=True)

最后贴上代码,

#coding=utf-8
#从flask这个包中导入Flask类,这个类时核心项目
from flask import Flask
from MingyAn import config
#创建一个Flask对象,传递__name__参数
#__name__参数作用
#1.可以规定模板和静态文件的查找路劲
#2.以后一些插件报错了,可以通过这个参数找到具体的错误位置
app=Flask(__name__) #创建一个web运用
#@app.route 是一个装饰器
#@app.route("/")就是将url中的/映射到hello_world 这个视图函数上面
#@当你访问网址/目录的时候,会执行hello_world函数,然后这个函数的返回值给浏览器 @app.route("/") # 定义路由(Views),可以理解为定义页面的url
def hello_wold(): return "这是用Python+Flask 搞出来的" # 渲染页面 '''
debug调试错误
a=10
b=0
c=a/b
return c
''' #如果这个文件是作为主文件允许,那么执行app.run()方法,即启动网站
#app.run()时flask钟的一个测试应用服务器
if __name__ =='__main__':
app.run(host='127.0.0.1',port=8080) # 运行,指定监听地址为127.0.0.1:8080

2019-01-1018:32:56

每天进步一点。加油!

python3 Flask -day1的更多相关文章

  1. python3+Flask 链接MySQL 时,提示“No module named MYSQLdb”

    python3+flask 链接Mysql时提示“No module named MYSQLdb” 解决: pip install mysqlclient

  2. Python3+Flask+uwsgi部署

    python3 按照常规的方式安装即可: wget https://www.python.org/ftp/python/3.5.4/Python-3.5.4.tgz tar zxvf Python-3 ...

  3. Python3+Flask安装使用教程

    一.环境配置 当前我的开发环境是Miniconda3+PyCharm.开发环境其实无所谓,自己使用Python3+Nodepad都可以.安装Flask库: pip install Flask 二.第一 ...

  4. Python3 Flask+nginx+Gunicorn部署(上)

    前言:一般在本地运行flask项目通常是直接python3 文件名.py,然后打开:http://127.0.0.1:5000 查看代码结果 这次主要是记录flask在python3 环境结合ngin ...

  5. python3 flask部署新浪sae

    第一步需要注册新浪云 https://sae.sinacloud.com/ 第二步 创建应用,注:直接选python2.7不用纠结,后面可以指定python版本,共享版 第三步 找到git仓库信息 第 ...

  6. Python3 flask nginx uwsgi 环境搭建

    配置项目的时候一般使用虚拟环境,是各个项目的环境独立起来,更多方便管理.至于如何使用搜索即可,并不难 1.安装python3 yum -y install zlib-devel bzip2-devel ...

  7. python3 Flask安装

    虚拟环境 建议在开发环境和生产环境下都使用虚拟环境来管理项目的依赖. 为什么要使用虚拟环境?随着你的 Python 项目越来越多,你会发现不同的项目会需要 不同的版本的 Python 库.同一个 Py ...

  8. 如果使用 Python3(Flask) 一步一步模拟一个网页微信客户端

    目录 Web Weixin Pipeline 一.获取登录的二维码 1.1.打开浏览器输入下面网址 1.2.梳理原理 1.3.代码实现 1.4.启动测试 二.扫码成功 2.1.扫码状态 2.2.原理状 ...

  9. 解决centos6系统上python3—flask模块的安装问题

    Flask 是一个使用 Python 编写的轻量级 Web 框架(所以我们前面花了那么多时间安装 Python3 呀).它被称为微型架构,因为其使用非常简单的核心以及功能丰富的扩展.虽然 Flask ...

随机推荐

  1. 结构化您的Python工程

    我们对于"结构化"的定义是您关注于怎样使您的项目最好地满足它的对象性,我们 需要去考虑如何更好地利用Python的特性来创造简洁.高效的代码.在实践层面, "结构化&qu ...

  2. 探讨SELECT语句的元数据&动态取样&读一致性导致的一致性读和递归操作

    前几天,论坛上的同行在讨论SELECT语句的元数据,动态取样和读一致性导致的一致性读和递归问题,今天有时间,就试着进行了测试,本人测试环境如下: win7_64+Oracle11.2.0.4_64 那 ...

  3. Linux kernel的中断子系统之(二):IRQ Domain介绍

    返回目录:<ARM-Linux中断系统>. 总结:一.二概述了软硬件不同角度的IRQ Number和HW Interrupt ID,这就需要他们之间架个桥梁. 三介绍了架设这种桥梁的几种方 ...

  4. 附录C--拉格朗日对偶性

    1.原始问题 假设$f(x)$,$c_i(x)$,$h_j(x)$是定义在$R^n$上的连续可微函数,$x \in R^n$.考虑以下三类优化问题. 1.无约束的优化问题: \begin{align* ...

  5. JavaScript Array+String对象的常用方法

    Array 对象 Array 对象用于在单个的变量中存储多个值. 创建 Array 对象的语法: new Array(); new Array(size); new Array(element0, e ...

  6. nodejs中处理回调函数的异常

    如果是使用nodejs+express3这个经典的组合,那么有一种很方面的处理回调函数异常的方法: 1. 安装模块:express-domain-middleware 2. 加入如下的代码: app. ...

  7. css布局-双飞翼布局

    <div class="header">Header</div> <div class="bd"> <div clas ...

  8. Java Script 学习笔记 (一) 基础

    1. 设置变量 const: 赋常量,不可更改. let :设置可更改变量. ES6 中推荐使用let 而不是var. Let 和var的区别 : let 将变量的作用域限定在当前{}中, var 定 ...

  9. Java 读书笔记 (十二) Java Character 类

    在实际开发过程中, 我们经常会遇到需要使用对象,而不是内置数据类型的情况. 为了解决这个问题, Java语言为内置数据类型char提供了包装类Character类. 可以使用Character的构造方 ...

  10. Dubbo中Directory解析

    Directory代表多个Invoker,可以把它看成List Directory接口 Directory接口继承了Node接口: 1234567 public interface Directory ...