繁体   English   中英

如何使用命令行参数调用python脚本?

[英]How to call a python script with command line args?

我有一个脚本client.py,它直接以脚本形式读取命令行args(未包装在main()之类的函数中),如下所示:

opts, args = getopt.getopt(sys.argv[1:], "l:r:a:j:b:f:n:u:")

并打印一堆东西。

我需要从我的代码中调用此脚本(如果需要的话,请在Google App Engine上)。 似乎在打电话

import client

将client.py作为脚本运行,但是如何指定参数?

除非必须这样做,否则不应该这样做:如果您有两个Python脚本,它们可以在Python中通信,而不是通过命令行解析器进行通信。 if __name__ == "__main__"检查重写client.py ,然后直接从脚本中调用其main函数。

如果您没有这样做的选择(并且尽可能避免这种情况),则可以设置sys.argv 我不确定GAE是否允许您这样做。 您可能还可以使用subprocess.Popen

你不能 使用subprocessos.exec*()或者修改其他脚本,以使用解析这些参数,然后将其传递到主哨main()函数,然后调用main()自己使用适当的参数。

另外, import client

Google AppEngine使用经过重大修改的Python版本,并禁用了许多系统和子进程库以及大多数C python模块。 要调用该脚本,您需要导入一个入口点并进行调用。 我相信约定是调用您的入口点main并调用它,并传递可能需要的所有args。 通常,这是一个好习惯。 例如在调用应用程序中:

from client import main
main()

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM