gpt4 book ai didi

python - 如何从另一个python文件执行 `if __name__ == "__main_ _"`中的代码

转载 作者:行者123 更新时间:2023-12-01 08:09:10 25 4
gpt4 key购买 nike

在我的 python 文件中,我有一个带有一些参数的函数,在同一个文件中,我有一个 if __name__ == "__main__" 子句,它使用一组特定的参数运行此函数(例如用户展示其功能)。就像这样,

def foo(arg1, arg2):
pass

if __name__ == "__main__":
arg1 = 1
arg2 = 2
foo(arg1, arg2)

此外,我还有另一个包含 pytest 使用的测试的文件。我想让其中一个测试运行与上面提到的 if 子句中写入的内容完全相同的内容,即执行

arg1 = 1
arg2 = 2
foo(arg1, arg2)

无需将代码复制到包含测试的文件中是否可以实现?

最佳答案

好吧,我不是这方面的专家,但是如何重定向你的 if __name__ == "__main__":到另一个函数并从其他文件调用该函数?

文件1:

def main_file1:
arg1 = 1
arg2 = 2
foo(arg1, arg2)

if __name__ == "__main__":
main_file1()
<小时/>

文件2:

from file1 import *

def somefunc():
main_file1()

但是,我不确定您为什么要这样做。通常,您的整个项目中只有 1 个主要函数来让事情顺利进行并从那里调用其他函数。

最终这种方式无法达到文件主要功能的目的

关于python - 如何从另一个python文件执行 `if __name__ == "__main_ _"`中的代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55367538/

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