You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python开发中如何直接运行entry_point指定的foo.bar:baz函数?

解决开发时直接运行entry_points指定函数的问题

你可以用以下几种方式避免每次修改代码都重新安装包,直接运行目标函数:

方法1:用python -c直接调用函数

在项目根目录(包含foo文件夹的目录)下运行:

python -c "from foo.bar import baz; baz()"

这种方式无需额外配置,直接通过命令行导入函数并执行,修改代码后重新运行该命令即可生效。

方法2:使用setuptools开发模式安装

执行以下命令在开发模式下安装你的包:

pip install -e .

这个命令会在系统中生成指向源码的软链接,安装后的foobaz命令会直接调用本地源码文件。之后修改代码无需重新安装,直接运行foobaz就能使用最新逻辑,和Flask的自动重载逻辑类似。如果baz是启动Flask应用的函数,还可以在代码中开启debug模式实现自动重载。

方法3:在模块中添加主入口块

在foo/bar.py文件末尾添加以下代码:

if __name__ == "__main__":
    baz()

之后你就可以用以下命令直接运行模块并执行baz函数:

python -m foo.bar

这种方式不需要安装包,修改代码后重新运行命令即可,还能避免直接运行python foo/bar.py时出现的相对导入错误(-m参数会把foo.bar作为正规模块加载,正确识别父包结构)。

内容的提问来源于stack exchange,提问作者tobiasBora

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.18 23:44:52