无法运行Python项目:找不到__main__模块,求pyproject.toml解决方法
解决Python包运行时找不到__main__模块的问题
核心原因
你用python pyfhirsdc直接运行目录的方式不对——Python不会自动识别目录里的主入口,要么目录里有__main__.py,要么得通过正确的模块调用方式,或者在pyproject.toml里配置控制台脚本。
具体解决方案
方案1:配置pyproject.toml的控制台脚本(推荐)
打开项目根目录的pyproject.toml,添加或修改[project.scripts]区块,指定你的包入口:
[project.scripts] pyfhirsdc = "pyfhirsdc.main:main"
- 左边的
pyfhirsdc是你要在命令行直接调用的命令名 - 右边的
pyfhirsdc.main:main表示:包目录pyfhirsdc下的main.py文件,里面的main函数是入口(根据实际项目结构调整,比如如果入口在pyfhirsdc/cli.py的cli函数,就改成pyfhirsdc.cli:cli)
改完之后,重新运行可编辑安装:
python3 -m pip install -e .
之后你直接在命令行输入pyfhirsdc就能运行项目了。
方案2:添加__main__.py临时运行
在pyfhirsdc目录下创建__main__.py文件,内容如下(根据项目实际入口调整):
from .main import main if __name__ == "__main__": main()
然后用模块方式运行:
python -m pyfhirsdc
方案3:直接运行入口文件
如果明确知道项目的主入口脚本(比如pyfhirsdc/main.py),可以直接运行这个文件:
python pyfhirsdc/main.py
内容的提问来源于stack exchange,提问作者rksh
相关产品推荐
相关产品推荐

