gpt4 book ai didi

python - 在 Python 中中止模块的执行

转载 作者:太空狗 更新时间:2023-10-29 20:48:20 25 4
gpt4 key购买 nike

我想停止评估正在导入的模块,而不停止整个程序。

这是我想要实现的示例:

main.py

print('main1')
import testmodule
print('main2')

testmodule.py

print(' module1')
some_condition=True
if some_condition:
exit_from_module() # How to do this?
print(' module2') # This line is not executed.

预期输出:

main1
module1
main2

最佳答案

没有停止执行模块的好方法。您可以引发异常,但随后您的导入模块将需要处理它。也许只是像这样重构:

print(' module1')
some_condition = True
if not some_condition:
print(' module2')

更新:更好的方法是将您的模块更改为仅定义函数和类,然后让调用者调用其中之一来执行他们需要完成的工作。

如果你真的想在导入期间完成所有这些工作(记住,我认为最好不要这样做),那么你可以将你的模块更改为这样:

def _my_whole_freaking_module():
print(' module1')
some_condition = True
if some_condition:
return
print(' module2')

_my_whole_freaking_module()

关于python - 在 Python 中中止模块的执行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6571476/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com