本地运行fastapi-example报configs.Environment模块不存在错误
问题根因
报错由两个常见的Python导入问题触发:
- 文件名大小写不匹配:项目作者大概率在大小写不敏感的文件系统(Windows/macOS默认配置)下开发,
configs目录下的实际文件名为全小写的environment.py,但main.py中写的导入路径是configs.Environment(首字母大写)。Linux系统文件系统默认大小写敏感,Python会将Environment.py和environment.py识别为完全独立的两个文件,因此无法定位到对应模块。 - 启动路径错误:如果执行启动命令时当前工作目录不是项目根目录(即存放
main.py、configs文件夹的一级目录),项目根目录不会被加入Python模块搜索路径,也会触发同类导入错误。
修复方案
按以下顺序操作即可解决:
- 修正导入语句大小写:打开
main.py,将第5行的导入语句修改为:
from configs.environment import get_environment_variables
全局检查项目内其他.py文件的导入语句,所有涉及文件名的部分必须和磁盘上的实际文件名大小写完全一致。
- 切换工作目录到项目根目录后再执行启动命令,不要在其他目录层级下调用uvicorn启动服务。
- 如果完成前两步后仍报错,启动前先执行命令将项目根目录加入Python搜索路径:
export PYTHONPATH=./:$PYTHONPATH
再正常执行启动命令即可。
内容的提问来源于stack exchange,提问作者Omar Dulaimi
相关产品推荐
相关产品推荐

