![](/img/trans.png)
[英]How to execute python scripts that import third party modules via the command line
[英]How to execute modules as scripts in Python
我創建了一個名為fibo.py
的module
,如教程所示,如下所示:
def fib(n):
a, b = 0, 1
while a < n:
print(a, end=' ')
a, b = b, a+b
print()
def fib2(n):
result = []
a, b = 0, 1
while a < n:
result.append(a)
a, b = b, a+b
return result
然后我添加了
python fibo.py <arguments>
我在 fibo.py 的 f 上遇到了invalid syntax error
。
我在堆棧溢出上看到過類似的問題,但對我來說沒有任何意義。
我已經在這段代碼上工作了一個小時。 非常感謝您的幫助。
您不應該收到語法錯誤。 如果你這樣做了,你試圖在交互式控制台中運行它,而不是你的系統終端。 如果您在系統終端中運行它,它將執行; 只是什么都不會發生。
如果這是一個完整的模塊,則-m
標志可能有用。
否則,如果這只是一個獨立的腳本,你需要一個“主”或實現相同的東西:
import sys
def fib(n):
a, b = 0, 1
while a < n:
print(a, end=' ')
a, b = b, a+b
print()
def main():
arg = sys.argv[1] # Grab the arguments passed to the script
fib(int(arg)) # Obviously, add some error handling
if __name__ == "__main__":
main()
然后,在您的終端中(而不是像 iPython 這樣的交互式控制台):
python fibo.py 100
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.