Skip to main content
 首页 » 编程设计

python之安装 setup.py 后调用模块中的函数

2025年05月04日11youxin

我有一个程序/笑话需要一个相当大的数据结构来运行,(一个需要几秒钟构建的字典)我想在运行时创建它并将其腌制到安装目录中 python setup.py 安装.

distutils.core 中的

setup() 看起来不应该退出,所以我想我可以导入我的模块并在调用 setup() 在 setup.py 中,但它似乎没有工作,即使安装确实工作。

这就是我的 setup.py 现在的样子:

from distutils.core import setup 
 
setup(... 
    ) 
 
from phoneoops import utils 
 
utils.get_hashed_dictionary(save=True) 

请您参考如下方法:

我创建了一个虚拟 setup.py 作为:

from distutils.core import setup 
setup() 
print 'after' 

我的打印语句在运行 python setup.py install 后打印得很好。
我尝试了一个无效的命令,如 python setup.py xx,但没有调用 after print。

您确定它没有引发异常或 SystemExit 吗?

当我将这个简单示例修改为:

try: 
    setup() 
except SystemExit as e: 
    print e 
print 'after' 

并运行 python setup.py xx,after 语句运行良好。

编辑:
同意,@AndiDog,这样更好(除非出于某种原因你想要吞下异常):

try: 
    setup() 
finally: 
    print 'after'