मैं अब अजगर जानने हूँ, और आज के रूप में निष्पादित मॉड्यूल, मैं http://docs.python.org/release/2.5.4/tut/node8.htmlलिपियों
6.1.1 में एक समस्या मुलाकात की स्क्रिप्ट मॉड्यूल निष्पादित
जब आप के साथ एक पायथन मॉड्यूल को चलाने
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]))
"अजगर 222 fibo.py" यह सही है। हमें अपनी स्क्रिप्ट दिखाएं, यह सीम पहली पंक्ति में वाक्यविन्यास के साथ एक समस्या है। –