Flask是一个使用Python编写的轻量级Web应用框架。

一、安装Flask

以管理员身份,打开命令提示符窗口,输入下面命令

py -3 -m pip install flask

这个命令会连接到PyPI网站下载和安装Flask模块,以及Flask依赖的几个模块:Werkzeug、MarkupSafe、Jinja2、itsdangerous、click。
安装完成后,在命令提示符窗口最后部分可以看到:

Installing collected packages: Werkzeug, MarkupSafe, Jinja2, itsdangerous, click, flask
Successfully installed Jinja2-2.10.1 MarkupSafe-1.1.1 Werkzeug-0.15.4 click-7.0 flask-1.0.3 itsdangerous-1.1.0

二、创建一个hello world的最小Web应用

1、创建一个hello.py,内容如下

#导入flask模块的Flask类
from flask import Flask #__name__为当前活动模块的名称
app = Flask(__name__) #设置路由
@app.route('/')
def hello() -> str:
return 'Hello World!' """run()有3个可选参数
host 主机,默认为127.0.0.1
port 端口号,默认5000
debug 是否开启调试模式,默认为False,如设为True则修改代码会自动重启
"""
app.run()

在命令提示符窗口中定位到hello.py所在目录,并执行命令py -3 hello.py

D:\projects\python>py -3 hello.py
* Serving Flask app "hello" (lazy loading)
* Environment: production
WARNING: This is a development server. Do not use it in a production deployment.
Use a production WSGI server instead.
* Debug mode: off
* Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)

表示已经启动了一个Web应用,调试模式未开启,地址为http://127.0.0.1:5000,按CTRL+C可以退出Web应用。

3、在浏览器输入http://127.0.0.1:5000
可看到浏览器显示Hello World!
同时在刚才命令提示符窗口可看到
127.0.0.1 - - [23/Jun/2019 09:31:55] "GET / HTTP/1.1" 200 -

三、路由配置

在URL和函数之间建立联系的操作被称之为路由。
路由支持动态名称,规则如下:

1.<id> :默认接受的类型是str
2.<string:id> :指定id的类型为str,不能包含路径分隔符/
3.<int:id> :指定的id类型是整数
4.<float:id> : 指定id的类型为浮点数(四舍五入,且不能接收整数类型)
5.<path:path1> : 指定接收的path为任何非空字符串,可包含路径分隔符/

使用例子:

from flask import Flask

app = Flask(__name__) 

@app.route('/getStr/<id>')
def getStr(id) -> str:
"""匹配str类型的id值,如/getStr/1 """
return 'id: %s' %id @app.route('/getInt/<int:id>')
def getInt(id) -> str:
"""匹配int类型的id值,如/getInt/1 """
return 'id: %d' %id @app.route('/getFloat/<float:id>')
def getFloat(id) -> str:
"""匹配float类型的id值,如/getFloat/1.053 """
return 'id: %.2f' %id @app.route('/getPath/<path:path>')
def getPath(path) -> str:
"""匹配非空字符,一般匹配url路径值,如/getPath/test/1 """
return 'path: %s' %path app.run(debug = True)

使用Flask构建一个Web应用的更多相关文章

  1. Eclipse的maven构建一个web项目,以构建SpringMVC项目为例

    http://www.cnblogs.com/javaTest/archive/2012/04/28/2589574.html springmvc demo实例教程源代码下载:http://zuida ...

  2. 使用maven构建一个web项目

                          使用maven构建一个web项目     首先建立一个maven项目(关于环境配置上节有详细过程): 1)-->右键new,-->project ...

  3. 使用maven命令终端构建一个web项目及发布该项目

    构建环境: maven版本:3.3.9 系统平台:Windows7 x64 JDK版本:1.7 构建步骤: 1.打开maven安装目录,在地址栏输入cmd进入命令窗口 2.输入命令mvn archet ...

  4. maven 构建一个web项目

    maven已经大型的Java项目的管理工具,其功能非常强大,这里简单总结一下maven构建web项目的过程.本文介绍的是集成环境下的maven构建web项目. 一.准备 1.安装maven. 2.把m ...

  5. jmeter 构建一个Web测试计划

    添加用户 第一步你想做的每一个JMeter测试计划是添加一个 线程组 元素. 线程组告诉 JMeter的用户数量你想模拟,用户应该发送的次数 请求,请求他们应该送多少. 继续添加ThreadGroup ...

  6. Python 6 -- 构建一个Web应用

    用Flask Web框架,实现浏览器页面交互.在此之前需要了解web的基本工作流程,可参照https://blog.csdn.net/m0_37466453/article/details/72752 ...

  7. 【springBoot】之快速构建一个web项目

    基于maven,首先看pom文件 <parent> <groupId>org.springframework.boot</groupId> <artifact ...

  8. 从零构建一个简单的 Python Web框架

    为什么你想要自己构建一个 web 框架呢?我想,原因有以下几点: 你有一个新奇的想法,觉得将会取代其他的框架 你想要获得一些名气 你遇到的问题很独特,以至于现有的框架不太合适 你对 web 框架是如何 ...

  9. SharePoint Framework 构建你的第一个web部件(二)

    博客地址:http://blog.csdn.net/FoxDave 本篇接上一讲,介绍一下web部件项目中的代码. 下面首先列举一下项目中的一些关键文件. Web部件类 HelloWorldWebPa ...

随机推荐

  1. 转换流读写操作 java.io.OutputStreamWriter ,java.io.InputStreamReader

    package seday07; import java.io.FileOutputStream;import java.io.IOException;import java.io.OutputStr ...

  2. Java学习 1.4——第一个Java程序:Hello World!

    这一篇一起来写第一个Java程序,同时也了解一下IDEA的使用: 打开IDEA,新建项目: 选择Java,右边project SDK是选择Java版本,上一篇我们自己安装了JDK1.8,IDEA自带一 ...

  3. Linux安装docker-compose

    下载:curl -L https://get.daocloud.io/docker/compose/releases/download/1.16.1/docker-compose-`uname -s` ...

  4. FCC---Create a Graphic Using CSS---新月图形

    By manipulating different selectors and properties, you can make interesting shapes. One of the easi ...

  5. 项目中使用http referer,为了盗取图片资源

    项目背景:因为图片的数据是爬取的别人的图片,而且保存的数据仅仅是图片地址链接,为了减少数据存储和服务器压力,但是这就引发一个问题,有的图片地址没有做防盗处理,可以随意的下载使用:但有些图片的服务器做了 ...

  6. AcWing 21. 斐波那契数列

    题目地址 https://www.acwing.com/solution/acwing/content/2896/ 题目描述输入一个整数 n ,求斐波那契数列的第 n 项. 假定从0开始,第0项为0. ...

  7. 让你的网页"抖起来"?!?

    细心的小伙伴可能发现我的左下角有一个抖起来的小按钮,然后页面就开始皮了起来,哈哈好快乐啊 没有利用js,单独的使用了css3的动画就实现了这个效果 css设置 @keyframes shake-it{ ...

  8. shutil模块(了解)

    目录 一.shutil模块 1.1 zipfile压缩解压缩 1.2 tarfile压缩解压缩 一.shutil模块 高级的文件.文件夹.压缩包处理模块. import shutil # shutil ...

  9. Net中的并发锁

    object _lock 锁的概念,这里不做详细阐述.先从最经典的应用场景来说,单例模式在不考虑静态构造函数实现的方式下,用锁实现是必须的.比如: public class Singleton { p ...

  10. 说说 Vue.js 中的 v-cloak 指令

    可以使用 v-cloak 指令设置样式,这些样式会在 Vue 实例编译结束时,从绑定的 HTML 元素上被移除. 当网络较慢,网页还在加载 Vue.js ,而导致 Vue 来不及渲染,这时页面就会显示 ...