命令行参数PYTHON

时间:2013-05-20 03:44:11

标签: python python-3.x

代码

import sys

def main()
    print(sys.argv)

版本 - 3.3

文件名Pytest.py

使用语法pytest.py运行文件aaa bbb ccc

但它没有打印任何内容,也没有给出任何错误

2 个答案:

答案 0 :(得分:7)

您永远不会致电main()

Python没有自动运行的特殊main函数,因此,您可以将从命令行调用文件时要运行的代码放入特殊的if块中:

import sys

def main():
    print(sys.argv)

if __name__ == '__main__':
    main()

答案 1 :(得分:1)

详细说明@Blender的答案:Python函数不像C中那样编译。函数是语句 - 它们在控件遇到它们时执行,它从文件的第一行开始。

以下代码完全合法:

# get b somehow
if b:
    def foo(): return 1
else:
    def foo(): return 2

print(foo())