Iam尝试使用一个简单的脚本,我想打印通过命令行解析的值。但是在运行脚本时,它不会产生预期的输出
程序名称为python commadn_line_argu.py
import sys
def main():
for arg in sys.argv[1:]:
print "Given arfument is ", arg
if __name__=="_main_":
main()
感谢是否有人可以提供帮助
由于
答案 0 :(得分:1)
将其命名为python filname.py argument_name
答案 1 :(得分:1)
首先,当作为脚本执行时,模块的魔术变量__name__
设置为"__main__"
(不是"_main_"
- 注意 double 下划线),所以你必须修复这个测试。
然后当然,如果你没有在命令行上传递任何参数,你不能期望在这里有任何输出......
答案 2 :(得分:-1)
模块直接运行时的__name__
值为__main__
,而不是_main_
。更改您检查的值,您应该好好去。 (记住要实际传递一些参数!)
答案 3 :(得分:-1)
您的问题与How to read/process command line arguments?重复 您可以在那里找到更多详细信息,或使用以下代码:
import sys
def main():
for arg in sys.argv[1:]:
print "Given argument is ", arg
#_main_ should be __main__
if __name__ == "__main__":
main()