0

代码

import sys

def main()
    print(sys.argv)

版本 - 3.3

文件名 Pytest.py

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

但它没有打印任何东西,也没有给出任何错误

4

2 回答 2

7

你从不打电话main()

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

import sys

def main():
    print(sys.argv)

if __name__ == '__main__':
    main()
于 2013-05-20T03:45:54.837 回答
1

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

以下代码是完全合法的:

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

print(foo())
于 2013-05-20T03:47:03.040 回答