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. 学习AD、DA的体会

    AD转换器的转换是指模拟信号输入转化为数字信号输出,而DA转换器是把数字信号转换为模拟信号,在ADC0832.TLC549和TLC5615程序设计中,通过使用中断服务函数每0.5s对ADC0832进行 ...

  2. 【转】Sentry--错误日志收集

    简介 Sentry是一个实时事件日志记录和汇集的日志平台,其专注于错误监控,以及提取一切事后处理所需的信息.他基于Django开发,目的在于帮助开发人员从散落在多个不同服务器上的日志文件里提取发掘异常 ...

  3. 【转】详解JavaScript中的异常处理方法

    有三种类型的编程错误:(1)语法错误和(2)运行时错误(3)逻辑错误:语法错误: 语法错误,也被称为解析错误,在编译时进行传统的编程语言,并出现在JavaScript解释时. 例如,下面一行将导致一个 ...

  4. Zookeeper vs etcd vs Consul

    Zookeeper vs etcd vs Consul [编者的话]本文对比了Zookeeper.etcd和Consul三种服务发现工具,探讨了最佳的服务发现解决方案,仅供参考. 如果使用预定义的端口 ...

  5. Ractive 的 认识

    1 前言 Ractive.js是一款入门容易却功能强大的JS库,它的主旨是模板+数据=UI,数据的双向绑定,DOM节点的实时更新,事件处理等多个有用的功能.它吸取了AngularJS中的一些灵感,因此 ...

  6. 唱吧DevOps的落地,微服务CI/CD的范本技术解读

    1.业务架构:从单体式到微服务 K歌亭是唱吧的一条新业务线,旨在提供线下便捷的快餐式K歌方式,用户可以在一个电话亭大小的空间里完成K歌体验.K歌亭在客户端有VOD.微信和Web共三个交互入口,业务复杂 ...

  7. 如何打开JSP文件/JS和JSP的区别/Servlet的本质是什么,是如何工作的?

    一:如何打开JSP文件 1.安装JAVA 2.安装TOMCAT——免费开源的JAVAWEB服务器 3.安装ECLIPSE 二:JS和JSP区别 名字: JS:JavaScript JSP:Java S ...

  8. Javascript高级程序设计复习——第五章引用类型 【原创】

    5.1  Object类型 1:创建Object实例的两种方式 ①new构造法 var obj1 = new Object(); 注意大写!不传递参数时可以省略圆括号 obj1.hehe = &quo ...

  9. JS 总结----基础部分

    javascript基础:1.每个属性都可以加ID2.写函数的时候注意 == 和 = 不要写错了3.html里面怎么写js里面就怎么写,但是有一例外 className 比如oDiv.class = ...

  10. Java集合排序及java集合类详解--(Collection, List, Set, Map)

    1         集合框架 1.1         集合框架概述 1.1.1         容器简介 到目前为止,我们已经学习了如何创建多个不同的对象,定义了这些对象以后,我们就可以利用它们来做一 ...