Flask开发之环境搭建
目录
1、安装flask
2、创建Flask工程
编辑
3、初始化效果
4、运行效果
5、设置Debug模式
6、设置Host
7、设置Port
8、在app.config中添加配置
1、安装flask
如果电脑上从没有安装过flask,则在命令行界面输入以下命令:
pip install flask
如果电脑上曾经安装过flask,则先检查flask的版本,如果版本低于2.0.1,则进行升级。
#查看flask版本pip show flask#升级flaskpip install --upgrade flask
2、创建Flask工程
3、初始化效果
新创建的Flask项目含有templates和static两个文件夹,以及一个app.py文件。如果使用的是社区版的Pycharm则不会产生这三个文件,需要自行创建。
app.py文件:该文件是项目的入口文件,会默认生成一个主路由,并且视图函数名叫hello_world。
#app.py文件初始化代码from flask import Flaskapp = Flask(__name__)@app.route('/')def hello_world():return 'Hello World!'if __name__ == '__main__':app.run()
templates文件夹:用于存放模板文件。
static文件夹:用于存放静态文件。

4、运行效果
运行代码,在浏览器中输入http://127.0.0.1:5000即可看到浏览器网页显示“Hello World!”字样。至此,一个最简单的flask项目就创建完成了

5、设置Debug模式
设置Debug模式后,如果我们对代码进行修改,保存后Flask将会自动重启项目。如果程序出现错误,在开启Debug模式下,在浏览器端会显示错误信息,并且标记错误行号,有利于定位bug。点击右上角的demo1右侧下拉按钮,然后在弹出的下拉了列表中选择Edit Configurations命令。

在本项目的编辑界面中选中FLASK_DEBUG复选框,然后点击OK即可。
运行代码,可以看到PyCharm控制台显示已经开启Debug模式。

如果是社区版的PyCharm则需要在app.run方法调用时,添加debug=True参数。
from flask import Flaskapp = Flask(__name__)@app.route('/')def hello_world():return 'Hello world!'if __name__ == '__main__':app.run(debug=True)
6、设置Host
在Edit Configurations界面,在Additional options中添加“--host=新的主机地址”即可。
| Host地址 | 访问方式 |
|---|---|
| 本机的局域网IP地址 | 自己的计算机和局域网中的其他计算机都需要通过本机的IP地址才能访问到 |
| 127.0.0.1 | 代表本机的IP地址,只能本机访问,局域网中的其他计算机无法访问 |
| 0.0.0.0 | 本机既可以通过127.0.0.1访问,也可以通过本机的IP地址访问。局域网中的其他计算机需要通过本机的IP地址访问 |

运行项目可以通过哪些IP地址访问到本项目。
7、设置Port
在Edit Configurations界面,在Additional options中添加“--port=新的端口号”即可。当两个项目同时运行时,都是用默认端口号,则一次只能运行一个项目。而设置端口号,是两者各占一个端口,则可以同时运行两个项目。
如果是社区版的PyCharm则需要在app.run方法调用时,手动设置host和port参数。
from flask import Flaskapp = Flask(__name__)@app.route('/')def hello_world():return 'Hello world!'if __name__ == '__main__':app.run(debug=True,host="0.0.0.0",port=8000)
8、在app.config中添加配置
app.config是Config的对象,Config是一个继承自字典的子类,可以像操作字典一样操作它。在使用app.config是需要注意,所有配置项的名称都必须大写,否则不会被app.config读取到。参数较少的情况下,我们可以直接在文件中进行配置。
from flask import Flaskapp = Flask(__name__)app.config["SECRET_KEY"] = "1563456"# 不会被读取到app.config["secret_key"] = "4894894"print(app.config["SECRET_KEY"])@app.route('/')def hello_world():return 'Hello world!'if __name__ == '__main__':app.run(debug=True,host="0.0.0.0",port=8000)

如果需要配置的参数较多,可以直接创建一个config.py文件来存储配置信息。如果配置项名称出现小写,则会报错。
#app.py文件from flask import Flaskimport configapp = Flask(__name__)app.config.from_object(config)print(app.config["TOKEN_KEY"])@app.route('/')def hello_world():return 'Hello world!'if __name__ == '__main__':app.run(debug=True,host="0.0.0.0",port=8000)#config.py文件TOKEN_KEY = "123456"相关文章:
Flask开发之环境搭建
目录 1、安装flask 2、创建Flask工程 编辑 3、初始化效果 4、运行效果 5、设置Debug模式 6、设置Host 7、设置Port 8、在app.config中添加配置 1、安装flask 如果电脑上从没有安装过flask,则在命令行界面输入以下命令: pip install flask 如果电…...
Java集合框架与ArrayList、LinkedList的区别
文章目录 Java集合框架与ArrayList、LinkedList的区别集合框架ArrayList特点操作 LinkedList特点操作 区别代码实践注意事项 Java集合框架与ArrayList、LinkedList的区别 在Java中,集合框架是非常重要的一部分。集合框架提供了各种数据结构和算法,可以方…...
python-pandas库
目录 目录 目录 1.pandas库简介(https://www.gairuo.com/p/pandas-overview) 2.pandas库read_csv方法(https://zhuanlan.zhihu.com/p/340441922?utm_mediumsocial&utm_oi27819925045248) 1.pandas库简介(http…...
C++学习day--01 C生万物
1、C/C学习中遇到的问题: 1. 大部分初学者,学习 C/C 都是从入门到放弃。 C/C太难吗? 2. 90% 以上的初学者,学完 C/C 以后,考试完了,书看完了, 但还是不会做项目 是学的不够好吗࿱…...
链表及链表的常见操作和用js封装一个链表
最近在学数据结构和算法,正好将学习的东西记录下来,我是跟着一个b站博主学习的,是使用js来进行讲解的,待会也会在文章后面附上视频链接地址,大家想学习的可以去看看 本文主要讲解单向链表,双向链表后续也会…...
源码安装工具checkinstall使用
每当从源码包编译程序时,安装过程很愉快,但当你想删除时,就很费脑筋了,你可能要去找你当时编译的目录执行make unistall,当然更可能的是,你早就把源码包给删除了,对于强迫症来说,这显…...
离散数学集合论
集合论 主要内容 集合基本概念 属于、包含幂集、空集文氏图等 集合的基本运算 并、交、补、差等 集合恒等式 集合运算的算律,恒等式的证明方法 集合的基本概念 集合的定义 集合没有明确的数学定义 理解:由离散个体构成的整体称为集合,…...
TypeScript 基础
类型注解 类型注解:约束变量的类型 示例代码: let age:number 18 说明:代码中的 :number 就是类型注解 解释:约定了类型,就只能给变量赋值该类型的值,否则,就会报错 错误演示:…...
MySQL InnoDB引擎 和 Oracle SGA
MySQL InnoDB引擎和Oracle SGA有以下异同: 异同点: 两者都是用来管理数据存储和访问的。 它们都可以通过调整参数来优化性能。 它们都支持事务处理和ACID属性。 它们都可以通过备份和恢复来保护数据。 异点: MySQL InnoDB引擎是一种存储…...
JAVA开发与运维(web生产环境部署)
web生产环境部署,往往是分布式,和开发环境或者测试环境我们一般使用单机不同。 一、部署内容 1、后端服务 2、后台管理系统vue 3、小程序 二、所需要服务器 5台前端服务器 8台后端服务 三、所需要的第三方组件 redismysqlclbOSSCDNWAFRocketMQ…...
普通人,自学编程,5个必备步骤
天给大家分享个干货哈 普通人自学编程 想学成找到一份工作甚至进大厂 非常有效且必备的5个步骤 文章最后 还给大家提供了一些免费的学习资料 记得提前收藏起来 相信很多人在最开始学编程的时候 上来就是去网上找一套视频 或者买一本书直接开干 这种简单粗暴的方法其实是不对的 …...
kubernetes安全框架RBAC
目录 一、Kubernetes 安全概述 二、鉴权、授权和准入控制 2.1 鉴权(Authentication) 2.2 授权(Authorization) 2.3 准入控制 三、基于角色的权限访问控制: RBAC 四、案例:为指定用户授权访问不同命名空间权限 一、Kubernetes 安全概述 K8S安全控…...
【大数据面试题大全】大数据真实面试题(持续更新)
【大数据面试题大全】大数据真实面试题(持续更新) 1)Java1.1.Java 中的集合1.2.Java 中的多线程如何实现1.3.Java 中的 JavaBean 怎么进行去重1.4.Java 中 和 equals 有什么区别1.5.Java 中的任务定时调度器 2)SQL2.1.SQL 中的聚…...
Linux [常见指令 (1)]
Linux常见指令 ⑴ 1. 操作系统1.1什么事操作系统1.2选择指令的原因 2.使用工具3.Linux的指令操作3.1mkdir指令描述:用法:例子 mkdir 目录名例子 mkdir -p 目录1/ 目录2/ 目录3 3.2 touch指令描述:用法:例子 touch 文件 3.2pwd指令描述:用法:例子 pwd 3.4cd指令描述:用法:例子 c…...
进程控制下篇
进程控制下篇 1.进程创建 1.1认识fork / vfork 在linux中fork函数时非常重要的函数,它从已存在进程中创建一个新进程。新进程为子进程,而原进程为父进程 #include<unistd.h> int main() {pid_t i fork;return 0; }当前进程调用fork,…...
PS学习笔记(零基础PS学习教程)
很多新手学习PS不知从何下手,做设计的第一阶段肯定是打牢基础,把工具用熟练;本期特别为大家整理了PS入门的学习笔记,把每个工具的用法整理了下来,在使用过程中有哪里不清楚的可以翻看来看看~ 一、ps的工作界面的介绍 …...
如何构建数据血缘系统
1、明确需求,确定边界 在进行血缘系统构建之前,需要进行需求调研,明确血缘系统的主要功能,从而确定血缘系统的最细节点粒度,实体边界范围。 例如节点粒度是否需要精确到字段级,或是表级。一般来说&#x…...
IPsec中IKE与ISAKMP过程分析(主模式-消息3)
IPsec中IKE与ISAKMP过程分析(主模式-消息1)_搞搞搞高傲的博客-CSDN博客 IPsec中IKE与ISAKMP过程分析(主模式-消息2)_搞搞搞高傲的博客-CSDN博客 阶段目标过程消息IKE第一阶段建立一个ISAKMP SA实现通信双发的身份鉴别和密钥交换&…...
深度学习技巧应用10-PyTorch框架中早停法类的构建与运用
大家好,我是微学AI,今天给大家介绍一下深度学习技巧应用10-PyTorch框架中早停法类的构建与运用,文章将介绍深度学习训练过程中的一个重要技巧—早停法,以及如何在PyTorch框架中实现早停法。文章将从早停法原理和实践出发,结合实际案例剖析早停法的优缺点及在PyTorch中的应…...
Linux文件系统权限
目录标题 文件权限文件和目录的一般权限文件的权限针对三类对象进行定义文件和目录中,r、w、x的作用 设置文件和目录的一般权限修改文件或目录的权限—chmod(change mode)命令权限值的表示方法—使用3位八进制数表示权限值的表示方法—使用字符串表示修改文件或目录…...
告别两两配对!用Fast3R Transformer一次搞定1000张图的多视角重建(保姆级原理解读)
Fast3R Transformer:颠覆多视角重建的并行化革命 想象一下,你面前摆着1000张从不同角度拍摄的埃菲尔铁塔照片。传统方法需要将这些照片两两配对,进行数百万次重复计算,而Fast3R只需一次前向传播就能完成所有视角的联合重建——这就…...
30分钟快速搭建企业级工作流系统:RuoYi-Flowable-Plus完整指南
30分钟快速搭建企业级工作流系统:RuoYi-Flowable-Plus完整指南 【免费下载链接】RuoYi-Flowable-Plus 本项目基于 RuoYi-Vue-Plus 进行二次开发扩展Flowable工作流功能,支持在线表单设计和丰富的工作流程设计能力。如果觉得这个项目不错,麻烦…...
Homebrew国内镜像源对比:如何为MacOS M2快速安装Pandoc并配置Typora
Homebrew国内镜像源深度评测:M2 Mac高效安装Pandoc与Typora配置指南 作为Markdown写作的重度用户,我曾在M1 Pro和M2 Max芯片的MacBook上反复折腾Pandoc的安装过程。最令人头疼的不是软件本身,而是Homebrew那令人抓狂的下载速度——有时一个简…...
macOS歌词解决方案:LyricsX从安装到精通的全方位指南
macOS歌词解决方案:LyricsX从安装到精通的全方位指南 【免费下载链接】LyricsX 🎶 Ultimate lyrics app for macOS. 项目地址: https://gitcode.com/gh_mirrors/ly/LyricsX 在数字音乐体验中,歌词同步显示是提升沉浸感的关键要素。然而…...
实战对比:Vamana/HNSW/NSG三大图算法在百维向量搜索中的性能差异
百维向量搜索实战:Vamana/HNSW/NSG三大图算法性能横评 在当今数据爆炸的时代,高效处理高维向量搜索已成为推荐系统、图像识别和自然语言处理等领域的核心技术瓶颈。面对百维甚至更高维度的向量数据,传统暴力搜索方法早已力不从心,…...
Phi-4-Reasoning-Vision效果展示:红外图像+可见光图像跨模态推理
Phi-4-Reasoning-Vision效果展示:红外图像可见光图像跨模态推理 1. 多模态推理工具概览 Phi-4-Reasoning-Vision是基于微软Phi-4-reasoning-vision-15B多模态大模型开发的高性能推理工具,专为双卡RTX 4090环境优化。这个工具最令人印象深刻的是它能够处…...
炉石传说脚本Hearthstone-Script:三步从零到精通的自动化游戏指南 [特殊字符]
炉石传说脚本Hearthstone-Script:三步从零到精通的自动化游戏指南 🎮 【免费下载链接】Hearthstone-Script Hearthstone script(炉石传说脚本)(2024.01.25停更至国服回归) 项目地址: https://gitcode.com…...
CYBER-VISION零号协议SolidWorks设计文档智能解读与生成
CYBER-VISION零号协议:让AI读懂你的SolidWorks设计图 每次打开一个复杂的SolidWorks装配体文件,面对几十上百个零件,你是不是也头疼过整理物料清单、编写设计说明?或者,当同事发来一份设计文档,你需要花半…...
150万规模!深势开源科学图像界ImageNet,AI终于能看懂论文图表了
150 万图文对、500 万子图,全面覆盖 300 科学子学科。深势开源 OmniScience,让 AI 真正读懂科研文献图表。跨越“盲区”:让AI真正读懂科学影像在科学研究日益数字化的今天,大模型已经能够高效处理书籍与文献中的文本信息。不过&am…...
LightOnOCR-2-1B GPU优化实践:vLLM推理引擎配置与显存占用压测报告
LightOnOCR-2-1B GPU优化实践:vLLM推理引擎配置与显存占用压测报告 你是不是也遇到过这样的烦恼?部署一个OCR模型,明明看着参数不大,但一跑起来,显存就蹭蹭往上涨,甚至直接爆掉。或者,服务启动…...

