讲师中心 微信公众号
AI工具推荐 视频效率加速

PyCharm如何设置代码修改后自动重新运行

夏萱小哥_5930

夏萱小哥_5930

发布时间:2026-08-10 09:03:22

|

727人浏览过

|

来源于php中文网

原创

PyCharm中--reload不生效,是因为直接点击绿色三角按钮运行main.py会绕过uvicorn启动逻辑,导致热重载未触发;必须配置Run Configuration,指定uvicorn为脚本路径,并设置参数为main:app --reload,工作目录为项目根目录,且Python解释器需匹配虚拟环境。

pycharm如何设置代码修改后自动重新运行

PyCharm里--reload不生效,是因为没走uvicorn命令

直接点绿色三角按钮运行 FastAPI 项目,默认用的是 PyCharm 自带的 Python 解释器执行 main.py,而不是调用 uvicorn。所以加了 --reload 参数也没用——根本没进 uvicorn 的热重载逻辑。

常见错误现象:
改完代码保存,浏览器刷新还是旧结果;终端没打印 INFO: StatReload detected changes in 'main.py';PyCharm 控制台输出里压根没出现 uvicorn 启动日志。

  • 必须显式配置 Run Configuration,把脚本路径设为 uvicorn 可执行文件(不是你的 main.py)
  • Program arguments 填 main:app --reload(注意冒号和空格)
  • Working directory 设为项目根目录(确保能 import 到 main 模块)
  • Python interpreter 要选对——比如用 conda 环境,就别误选系统 Python 或 pythonw.exe

为什么不用 PyCharm 内置的 “Run with Python Console” 或右键 Run

这些方式本质是执行 python main.py,哪怕你代码里写了 uvicorn.run(...),也绕不开 Python 进程重启机制。它不会监听文件变化,也不会触发 ASGI server 的 reload loop。

典型场景:
你在 main.py 里写 if __name__ == "__main__": uvicorn.run("main:app", reload=True) ——这看似可行,但 PyCharm 默认运行模式下,__name__ 是 "__main__",却因环境隔离或启动方式差异,导致 reload=True 被忽略或静默失败。

  • 不要依赖脚本内 uvicorn.run() + reload=True 实现热重载
  • 避免用 Run 'main'(右键菜单里带文件名的那个)
  • 不推荐靠 PyCharm 的 “Modify option to restart process on file change”(该选项对 ASGI 应用无效)

替代方案:Reloadium 插件真能热重载函数级改动?

Reloadium 不是万能的。它能在调试时替换单个函数体、重载模块,但对 FastAPI 的路由注册、依赖注入、中间件等运行时结构改动往往失效——因为这些逻辑在 app 初始化阶段就固化了。

PyCharm 2026.2
PyCharm 2026.2

PyCharm 2026.2是 JetBrains PyCharm 的指定版本安装包,下载地址指向官方 Windows 安装包直链,可用于旧项目兼容、版本回退和环境测试。

下载

使用场景有限:
适合改一个计算函数、调整某个工具方法的返回值;不适合改 @app.get("/user") 装饰器下的 handler、增删依赖参数、修改 Pydantic model 定义。

  • 安装后需重启 PyCharm,且只对 Debug 模式生效(Run 模式不触发)
  • 遇到 ImportError 或 AttributeError 时会 fallback 到完整重启
  • 它无法替代 uvicorn --reload 对整个 ASGI 生命周期的控制

最稳的实操路径:Terminal 里跑 uvicorn main:app --reload

这是 FastAPI 官方推荐方式,也是目前唯一能覆盖全部变更类型的方案——包括新增路由、改模板路径、更新静态文件映射等。

注意点:
PyCharm Terminal 默认工作目录常是项目根目录,但若你打开了子文件夹里的 main.py,终端 pwd 可能不对;--reload 默认只监控 .py 和 .toml 文件,如需监听 .jinja2 或 .yaml,得加 --reload-dir 参数。

  • 终端命令:进入项目根目录后执行 uvicorn main:app --reload --host 0.0.0.0 --port 8000
  • 改完代码后,Ctrl+S → 浏览器刷新,延迟通常在 300ms 内
  • 如果提示 Address already in use,先 kill -9 $(lsof -ti:8000)(macOS/Linux)或任务管理器杀掉进程
  • Windows 用户注意:PowerShell 默认禁用脚本执行策略,建议用 Git Bash 或 CMD

真正容易被忽略的是工作目录和模块导入路径——main:app 要求 main.py 在 Python path 里可 import,而 PyCharm 的 Run Configuration 有时会把 cwd 设错,导致 ModuleNotFoundError。终端方式反而更透明,出错一眼就能看出缺什么。

热门AI工具

更多
DeepSeek

DeepSeek是一款面向对话、写作、编程和推理场景的AI大模型工具。

PixTV
PixTV Hot

PixTV是一款面向AIGC内容创作的AI视频生成工具。

WorkBuddy

一款AI办公效率工具,主要用于腾讯云推出的AI原生桌面智能体工作台,适合需要提升相关任务效率的用户。

UpDream
UpDream Hot

一款AI视频创作工具,主要用于哔哩哔哩推出的自研AI视频创作工具,适合需要提升相关任务效率的用户。

蛙蛙写作

一款AI论文写作工具,主要用于超级AI智能写作助手,适合需要提升相关任务效率的用户。

PixPix
PixPix Hot

PixPix是一款面向电商视觉生产的AI商品图生成工具。

豆包大模型

豆包大模型是一款由字节跳动推出的企业级大语言模型服务平台。

Loomy
Loomy Hot

一款AI工具,主要用于科大讯飞发布的桌面级 AI 助理,比 OpenClaw 更易用、更安全!,适合需要提升相关任务效率的用户。

Seko
Seko Hot

一款AI视频创作工具,主要用于商汤科技推出的创编一体的AI短视频创作Agent,适合需要提升相关任务效率的用户。

相关专题

更多
pycharm怎么改成中文
pycharm怎么改成中文

PyCharm是一种Python IDE(Integrated Development Environment,集成开发环境),带有一整套可以帮助用户在使用Python语言开发时提高其效率的工具,比如调试、语法高亮、项目管理、代码跳转、智能提示、自动完成、单元测试、版本控制。此外,该IDE提供了一些高级功能,以用于支持Django框架下的专业Web开发。php中文网给大家带来了pycharm相关的教程以及文章,欢迎大家前来学习和阅读。

2569

2023.07.25

pycharm安装教程
pycharm安装教程

PyCharm是一款由JetBrains开发的Python集成开发环境(IDE),它提供了许多方便的功能和工具。本专题为大家带来pycharm安装教程,帮助大家解决问题。

4837

2023.08.21

如何解决pycharm找不到模块
如何解决pycharm找不到模块

解决pycharm找不到模块的方法:1、检查python解释器;2、安装缺失的模块;3、检查项目结构;4、检查系统路径;5、使用虚拟环境;6、重启PyCharm或电脑。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

738

2023.12.04

如何安装pycharm
如何安装pycharm

安装pycharm的步骤:1、访问PyCharm官方网站下载最新版本的PyCharm;2、下载完成后,打开安装文件;3、安装完成后,打开PyCharm;4、在PyCharm的主界面中等等。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

774

2024.02.23

python和pycharm的区别
python和pycharm的区别

Python和PyCharm是两个不同的概念,它们的区别如下:1、Python是一种编程语言,而PyCharm是一款Python集成开发环境;2、Python可以运行在各种不同的开发环境中,而PyCharm是专门为Python开发而设计的IDE等等。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

507

2024.02.23

pycharm环境如何配置
pycharm环境如何配置

配置教程:1、下载并安装PyCharm;2、选择Python解释器;3、配置虚拟环境;4、配置代码风格;5、配置调试器;6、配置版本控制工具;7、配置插件;8、配置Python路径和环境变量;9、配置其他选项。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

502

2024.02.23

pycharm解释器如何安装
pycharm解释器如何安装

安装步骤:1、打开PyCharm并打开你的项目;2、转到"File">“Settings”;3、在设置窗口中选择"Project">“Python Interpreter”;4、 点击“+” 符号添加新的解释器等等。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

323

2024.02.23

pycharm并行运行是啥意思
pycharm并行运行是啥意思

pycharm中的并行运行功能允许并发运行代码块,提高开发和测试效率。通过启用该功能和设置进程数,可以:加快开发和调试过程;缩短测试套件的运行时间;充分利用多核处理器;简化复杂代码的结构和维护。想了解更多pycharm的相关内容,可以阅读本专题下面的文章。

1168

2024.04.18

LLVM自定义Pass怎么写
LLVM自定义Pass怎么写

本专题聚焦LLVM自定义Pass开发,整理Pass类结构、run()方法、PreservedAnalyses、CMake构建、插件注册、-load-pass-plugin加载和测试用例编写流程。

80

2026.09.30

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
PyCharm官方快速入门指南
PyCharm官方快速入门指南

共0课时 | 0人学习

PyCharm官方快速入门指南
PyCharm官方快速入门指南

共0课时 | 0人学习

PyCharm配置Conda环境官方文档
PyCharm配置Conda环境官方文档

共0课时 | 0人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn