0
import sys
def main()
print(sys.argv)
版本 - 3.3
文件名Pytest.py
運行語法pytest.py AAA BBB CCC
的文件,但它沒」不打印任何東西,也不會給出任何錯誤
import sys
def main()
print(sys.argv)
版本 - 3.3
文件名Pytest.py
運行語法pytest.py AAA BBB CCC
的文件,但它沒」不打印任何東西,也不會給出任何錯誤
你永遠不會打電話main()
。
Python有一個自動運行無特殊main
功能,所以不是,你可以把你想要運行文件時在命令行叫成一個特殊的if
塊代碼:
import sys
def main():
print(sys.argv)
if __name__ == '__main__':
main()
要詳細說明@ Blender的答案:Python函數不像C那樣編譯。函數是語句 - 它們在控件遇到它們時被執行,並且從文件的第一行開始。
下面的代碼是完全合法:
# get b somehow
if b:
def foo(): return 1
else:
def foo(): return 2
print(foo())
你(和OP)忘了':''爲主要()' – Elazar
@Elazar:謝謝,固定。 – Blender
'__name__'約定是一個重要的習慣用法,但對於簡單的測試腳本,只是不要將代碼放入函數中。 'import sys;打印(sys.argv中)' – tripleee