我現在學習Python,而今天,我在 http://docs.python.org/release/2.5.4/tut/node8.html執行模塊,腳本
6.1.1遇到了一個問題 執行模塊,腳本
當你運行一個Python模塊
python fibo.py <arguments>
模塊中的代碼將被執行,就像您導入它一樣,但將 __name__設置爲「__main__」。這意味着,通過在 末尾添加該代碼的模塊:
if __name__ == "__main__":
import sys`
fib(int(sys.argv[1]))
你可以使用一個腳本以及 一個導入的模塊文件,因爲代碼 它解析
:命令行僅當模塊被作爲 「主」文件執行運行
$ python fibo.py 50 1 1 2 3 5 8 13 21
34
,但是當我這樣做的外殼,我得到了
File "<input>", line 1
python fibo.py 222
SyntaxError: invalid syntax
如何正確執行腳本?
fibo.py是
def fib(n):
a,b=0,1
while b<n:
print b,
a,b = b,a+b
def fib2(n):
result=[]
a,b=0,1
while b<n:
result.append(b)
a,b=b,a+b
return result
if __name__ =="__main__":
import sys
fib(int(sys.argv[1]))
「python fibo.py 222」它是正確的。向我們展示您的腳本,它會在第一行中出現語法問題。 – 2010-09-03 14:48:59