【发布时间】:2020-05-11 07:52:39
【问题描述】:
假设我有一个可以接受 args 的 python 脚本
# testt.py
import argparse
def main(args):
print(args.foo)
print(args.bar)
print(args.nee)
if __name__ == "__main__":
parser = argparse.ArgumentParser(description='Test argument parser')
parser.add_argument('-foo', type=str)
parser.add_argument('-bar', type=int)
parser.add_argument('-nee', type=bool)
args = parser.parse_args()
main(args)
但是我不想从命令行运行它,而是想从另一个 Python 程序运行它
import testt
如何传入 arg 参数?
【问题讨论】:
-
您的
def main():和main(args)冲突。下定决心。args应该是函数参数还是全局模块? -
抱歉,刚刚固定为
def main(args) -
具有这 3 个属性的任何对象都将用作
testt.main(foo)参数。 -
有时定义
main(foo, bar, nee)更简洁。然后你可以在不创建具有属性的对象的情况下传递值。