मुख्य सामग्री पर जाएँ

How to Run Python Scripts Tutorial

जानें कि आप कमांड लाइन से Python स्क्रिप्ट कैसे चला सकते हैं, और अपनी स्क्रिप्ट को कमांड लाइन आर्ग्यूमेंट्स कैसे दे सकते हैं।
· 10 मि॰ पढ़ें

AI के साथ खोजें

इस ट्यूटोरियल का कोड ऑनलाइन चलाएं और संपादित करें

कोड चलाएं

आम तौर पर, हर शुरुआती पहले कमांड लाइन पर Python स्क्रिप्ट लिखना सीखता है, फिर कमांड लाइन से ही स्क्रिप्ट चलाने की ओर बढ़ता है, जहाँ स्क्रिप्ट सामान्यतः टेक्स्ट एडिटर में लिखी जाती है और कमांड लाइन से चलाई जाती है। इस पोस्ट में, हम विस्तार से देखेंगे कि Python स्क्रिप्ट्स कैसे चलाएँ। 

Python स्क्रिप्ट्स और इंटरप्रिटर्स

कंप्यूटर उस तरीके से कोड नहीं समझते जैसे इंसान लिखते हैं, इसलिए आपको कंप्यूटर और मानव-लिखित कोड के बीच एक इंटरप्रिटर की आवश्यकता होती है। इंटरप्रिटर का काम कोड को ऐसे फ़ॉर्मेट में बदलना है जिसे कंप्यूटर समझ और प्रोसेस कर सकें।

इंटरप्रिटर कोड को निम्न प्रकार से प्रोसेस करता है:

  • Python स्क्रिप्ट को क्रम में प्रोसेस करता है

  • कोड को बाइटकोड फ़ॉर्मेट में कम्पाइल करता है, जो कंप्यूटर द्वारा समझी जाने वाली एक लोअर-लेवल भाषा है।

  • अंत में, Python Virtual Machine (PVM) आती है। PVM, Python का रनटाइम पावरहाउस है। यह एक प्रक्रिया है जो आपके लोअर-लेवल बाइटकोड की इंस्ट्रक्शन्स पर इटरेट करती है और उन्हें एक-एक करके चलाती है।

स्क्रिप्ट्स की तरह, आपके पास मॉड्यूल भी होता है, जो एक Python स्क्रिप्ट है जिसे दूसरी Python स्क्रिप्ट में इम्पोर्ट कर उपयोग किया जाता है।

Python स्क्रिप्ट को .py एक्सटेंशन के साथ सेव किया जाता है, जो कंप्यूटर को बताता है कि यह एक Python प्रोग्राम स्क्रिप्ट है। Windows के विपरीत, Linux और Mac जैसे Unix-आधारित ऑपरेटिंग सिस्टम में Python पहले से इंस्टॉल होता है। साथ ही, Windows और Unix ऑपरेटिंग सिस्टम में Python स्क्रिप्ट्स चलाने का तरीका अलग होता है।

Python स्क्रिप्ट्स चलाना: शुरुआत के लिए सेटअप

सभी उपयोगकर्ताओं के लिए, विशेषकर Windows OS उपयोगकर्ताओं के लिए, यह अत्यधिक अनुशंसित है कि आप Anaconda इंस्टॉल करें, जिसे Anaconda वेबसाइट से डाउनलोड किया जा सकता है। आप इस Windows के लिए Anaconda इंस्टॉल करने की ट्यूटोरियल में दिए गए निर्देशों का पालन कर सकते हैं।

Windows ऑपरेटिंग सिस्टम पर Python3 इंस्टॉल करने के लिए, यह Python सेटअप ट्यूटोरियल देखें।

विभिन्न ऑपरेटिंग सिस्टम्स पर Python का कमांड-लाइन इंटरप्रिटर निम्न प्रकार से एक्सेस किया जा सकता है:

  • Windows पर, कमांड लाइन को कमांड प्रॉम्प्ट कहा जाता है, जिसे start मेनू पर क्लिक करके और command prompt सर्च करके खोला जा सकता है। एक और तरीका है Run डायलॉग बॉक्स में cmd टाइप करना और एंटर दबाना (Start मेनू $->$ Run और cmd टाइप करें)। इसके बाद, अगर Python आपके C-drive में इंस्टॉल है, तो आपको बस C:\python36\python.exe टाइप करना है, जहाँ python36 Python का संस्करण है (ध्यान दें: यह पाथ उस डायरेक्टरी के आधार पर भिन्न हो सकता है जहाँ Python कॉन्फ़िगर किया गया है)।
command prompt
(Source)
  • Mac सिस्टम पर यह बहुत सीधा-सादा है। आपको बस Launchpad खोलकर Terminal सर्च करना है, और टर्मिनल में Python टाइप करना है, यह आपको Python संस्करण के साथ आउटपुट देगा।
mac system
  • Mac सिस्टम की तरह, Linux सिस्टम पर भी टर्मिनल एक्सेस करना बहुत आसान है। डेस्कटॉप पर राइट-क्लिक करें और Terminal पर क्लिक करें, टर्मिनल में Python टाइप करें।
linux system
(Source)

नोट: इस ट्यूटोरियल में, आप Mac OS टर्मिनल का उपयोग करना सीखेंगे।

तो बिना किसी देरी के, शुरू करते हैं!

टर्मिनल में Python स्क्रिप्ट लिखना

आइए देखें कि हम टर्मिनल में ही कोड लिखकर आउटपुट कैसे जेनरेट कर सकते हैं। इसके लिए, पहले आप python3 टाइप करेंगे, जिसका मतलब है कि आप Python3 संस्करण का उपयोग करेंगे।

इसके बाद, आप सामान्यतः वैसे ही कोड कर सकते हैं जैसे किसी टेक्स्ट एडिटर या IDE (integrated development environment) में करते हैं, हालांकि टर्मिनल में आपको IDE जैसी सुविधाएँ नहीं मिलेंगी।

आप सदाबहार Hello, World! उदाहरण से शुरुआत करेंगे, और देखेंगे कि टर्मिनल में आउटपुट कैसा दिखता है।

टर्मिनल में Python स्क्रिप्ट लिखना

क्या यह अच्छा नहीं है कि सिर्फ टर्मिनल खोलकर और Python3 टाइप करके आप Python में कोड कर सकते हैं? आइए कुछ और उदाहरण आज़माते हैं।

टर्मिनल में Python स्क्रिप्ट लिखना

ऊपर दिए गए उदाहरण में एक बात नोट करने योग्य है कि बिना print स्टेटमेंट टाइप किए भी आप आउटपुट प्राप्त कर पाए।

आइए कोड को थोड़ा जटिल बनाते हैं और NumPy (Numerical Python) लाइब्रेरी का उपयोग करके दो ऐरे बनाते हैं और उन पर कुछ गणितीय ऑपरेशन्स लागू करते हैं। numpy के बारे में संक्षिप्त पृष्ठभूमि के लिए, यह एक Python प्रोग्रामिंग लाइब्रेरी है जो बड़े, बहु-आयामी ऐरे और मैट्रिसेस के साथ काम करने में सक्षम है, साथ ही इन ऐरे पर ऑपरेट करने के लिए उच्च-स्तरीय गणितीय फ़ंक्शन्स का व्यापक संग्रह प्रदान करती है।

टर्मिनल में Python स्क्रिप्ट लिखना

ऊपर की छवि से आप देख सकते हैं कि numpy का उपयोग करके आपने टर्मिनल के भीतर ही दो numpy ऐरे बनाए, जोड़े और गुणा किए। यहाँ ध्यान देने वाली बात यह है कि numpy में multiply फ़ंक्शन एलिमेंट-वाइज गुणा करता है जबकि dot फ़ंक्शन दो मैट्रिसेस का डॉट प्रोडक्ट लेता है। np.dot कमांड चलाने के लिए, आपको सुनिश्चित करना होगा कि पहली मैट्रिक्स के columns दूसरी मैट्रिक्स की rows के बराबर हों, और इसी कारण value error मिला।

टर्मिनल से Python स्क्रिप्ट कैसे चलाएँ

टर्मिनल से Python स्क्रिप्ट चलाना बहुत सरल है; टर्मिनल में Python स्क्रिप्ट लिखने के बजाय, आपको केवल vim, emacs या notepad++ जैसे टेक्स्ट एडिटर का उपयोग करना है और उसे .py एक्सटेंशन के साथ सेव करना है। फिर, टर्मिनल खोलें और उस डायरेक्टरी में जाएँ जहाँ कोड मौजूद है और python कीवर्ड के बाद स्क्रिप्ट का नाम लिखकर स्क्रिप्ट चलाएँ।

टर्मिनल से .py स्क्रिप्ट चलाना

terminal.py फ़ाइल बनाने के लिए, टर्मिनल में vim का उपयोग करें और प्रोग्राम का नाम vim terminal.py दें और नीचे दिया गया कोड उसमें पेस्ट करें। कोड सेव करने के लिए, esc कुंजी दबाएँ और फिर wq! टाइप करें। और अंत में, उस स्क्रिप्ट को चलाने के लिए, आपको बस python3 terminal.py टाइप करना है, और एक सेकंड से भी कम समय में, आप ऊपर दिखाए गए अनुसार आउटपुट देखेंगे।

नीचे दिए गए उदाहरण में प्रयुक्त कोड यह है।

import numpy as np

x = np.array([[1,2],[3,4]], dtype=np.float64)
y = np.array([[5,6],[7,8]], dtype=np.float64)

# Elementwise sum; both produce the array
# [[ 6.0  8.0]
#  [10.0 12.0]]
print("Output of adding x and y with a '+' operator:",x + y)
print("Output of adding x and y using 'numpy.add':",np.add(x, y))

# Elementwise difference; both produce the array
# [[-4.0 -4.0]
#  [-4.0 -4.0]]
print("Output of subtracting x and y with a '-' operator:",x - y)
print("Output of subtracting x and y using 'numpy.subtract':",np.subtract(x, y))

# Elementwise product; both produce the array
# [[ 5.0 12.0]
#  [21.0 32.0]]
print("Output of elementwise product of x and y with a '*' operator:",x * y)
print("Output of element wise product of x and y using 'numpy.multiply':",np.multiply(x, y))

# Elementwise division; both produce the array
# [[ 0.2         0.33333333]
#  [ 0.42857143  0.5       ]]
print("Output of elementwise division x and y with a '/' operator:",x / y)
print("Output of elementwise division x and y using 'numpy.divide':",np.divide(x, y))

# Elementwise square root; produces the array
# [[ 1.          1.41421356]
#  [ 1.73205081  2.        ]]
print("Output of elementwise square root x using 'numpy.sqrt':",np.sqrt(x))
Output of adding x and y with a '+' operator: [[ 6.  8.]
 [10. 12.]]
Output of adding x and y using 'numpy.add': [[ 6.  8.]
 [10. 12.]]
Output of subtracting x and y with a '-' operator: [[-4. -4.]
 [-4. -4.]]
Output of subtracting x and y using 'numpy.subtract': [[-4. -4.]
 [-4. -4.]]
Output of elementwise product of x and y with a '*' operator: [[ 5. 12.]
 [21. 32.]]
Output of element wise product of x and y using 'numpy.multiply': [[ 5. 12.]
 [21. 32.]]
Output of elementwise division x and y with a '/' operator: [[0.2        0.33333333]
 [0.42857143 0.5       ]]
Output of elementwise division x and y using 'numpy.divide': [[0.2        0.33333333]
 [0.42857143 0.5       ]]
Output of elementwise square root x using 'numpy.sqrt': [[1.         1.41421356]
 [1.73205081 2.        ]]

Python स्क्रिप्ट को कमांड लाइन आर्ग्यूमेंट्स देना

कमांड लाइन आर्ग्यूमेंट्स कई बार जीवन को आसान बना देते हैं; प्रोडक्शन-रेडी कोड में अक्सर इनका उपयोग होता है। यह कोड आउटपुट की पुनरुत्पादकता को कुशल बनाता है। उदाहरण के लिए, मान लें कि आपके कोड में बहुत सारे यूज़र इनपुट्स या पढ़ी जाने वाली फाइलें हैं, तो कमांड लाइन आर्ग्यूमेंट्स का उपयोग करके, यदि आपको फ़ाइल नाम या किसी वैरिएबल इनपुट को बदलने की ज़रूरत पड़े, तो आपको ये सारे बदलाव करने के लिए कोड के भीतर नहीं जाना होगा।

इसे करने के लिए, आप sys मॉड्यूल का उपयोग करेंगे, जो एक इन-बिल्ट Python मॉड्यूल है। sys के भीतर, आपके पास argv है जो Python प्रोग्राम को पास किए गए कमांड-लाइन आर्ग्यूमेंट्स की सूची देता है। sys.argv कमांड लाइन आर्ग्यूमेंट्स को आइटम्स की सूची के रूप में पढ़ता है जहाँ उस सूची का पहला आइटम/एलिमेंट sys.argv[1] के रूप में एक्सेस किया जा सकता है, जबकि पहला आर्ग्यूमेंट, यानी sys.argv[0], हमेशा उस प्रोग्राम का नाम होता है जैसा कि उसे इनवोक किया गया था।

एक साधारण उदाहरण लेते हैं और देखते हैं यह कैसे काम करता है।

नोट: कमांड लाइन आर्ग्यूमेंट को Python string के रूप में पढ़ता है, इसलिए यदि आप संख्याओं से डील कर रहे हैं तो उसे integer में कन्वर्ट करना सुनिश्चित करें।

पिछले उदाहरण की तरह, नीचे दी गई कोड की पंक्तियाँ किसी एडिटर में command_line.py नाम से सेव करें और कोड चलाने के लिए python3 command_line.py 10 टाइप करें जहाँ 10 कमांड लाइन आर्ग्यूमेंट है।

import sys
num = sys.argv[1]
for i in range(int(num)):
    print (i)
Python स्क्रिप्ट को कमांड लाइन आर्ग्यूमेंट्स देना

यदि आप कोई कमांड लाइन आर्ग्यूमेंट न दें तो क्या होगा?

आपको list index out of range त्रुटि मिलेगी, जो यह भी पुष्ट करती है कि sys.argv आइटम्स की सूची के रूप में पढ़ता है। ऐसी त्रुटियों से बचने के लिए, आपको exceptional handling की आवश्यकता होगी, जो इस ट्यूटोरियल के दायरे से बाहर है।

Python स्क्रिप्ट को कमांड लाइन आर्ग्यूमेंट्स देना

Python स्क्रिप्ट का आउटपुट किसी फ़ाइल में लिखना

अंत में, बोनस के तौर पर, देखते हैं कि आप > कुंजी का उपयोग करके Python स्क्रिप्ट का आउटपुट txt फ़ाइल में कैसे सेव कर सकते हैं। 

आप पहले cli नाम का एक फ़ोल्डर बनाएँगे और command_line.py कोड को cli फ़ोल्डर में मूव करेंगे। फिर, आप उस फ़ोल्डर में क्या है यह जाँचेंगे ताकि सुनिश्चित हो सके कि वहाँ पहले से कोई txt फ़ाइल मौजूद नहीं है।

फिर, आप python3 command_line.py 10 > output.txt टाइप करेंगे और अंत में cli फ़ोल्डर की सामग्री जाँचेंगे। अब, आपको output.txt फ़ाइल दिखाई देनी चाहिए।

Python स्क्रिप्ट का आउटपुट फ़ाइल में लिखना

आइए output.txt फ़ाइल खोलकर उसकी सामग्री देखें।

Python स्क्रिप्ट का आउटपुट फ़ाइल में लिखना

ऊपर दिए गए आउटपुट से आप देख सकते हैं कि 0-9 अंक अब सिर्फ एक > चिन्ह का उपयोग करके एक टेक्स्ट फ़ाइल में लिखे जा चुके हैं।

निष्कर्ष

ट्यूटोरियल पूरा करने पर बधाई।

अभी भी बहुत कुछ एक्सप्लोर करना बाकी है, जैसे Python में GUI-आधारित निष्पादन, Python स्क्रिप्ट्स को इंटरैक्टिव रूप से चलाना, और फ़ाइल मैनेजर या IDE से Python स्क्रिप्ट्स चलाना। विशेष रूप से कमांड लाइन निष्पादन के संदर्भ में, आप Windows के command prompt पर प्रयोग करके देख सकते हैं और समझ सकते हैं कि यह Unix-आधारित ऑपरेटिंग सिस्टम से कैसे भिन्न है।

यदि आप Python में अभी शुरुआत कर रहे हैं और अधिक सीखना चाहते हैं, तो DataCamp का Introduction to Data Science in Python कोर्स करें।

Python स्क्रिप्ट्स FAQs

Python स्क्रिप्ट क्या है?

Python स्क्रिप्ट एक फ़ाइल होती है जिसमें Python कोड होता है। Python स्क्रिप्ट में मौजूद कोड को स्क्रिप्ट चलाकर निष्पादित किया जा सकता है, चाहे कमांड लाइन से या किसी दूसरी स्क्रिप्ट से कॉल करके।

मैं Python स्क्रिप्ट कैसे बनाऊँ?

Python स्क्रिप्ट बनाने के लिए, आपको एक टेक्स्ट एडिटर या एक इंटीग्रेटेड डेवलपमेंट एनवायरनमेंट (IDE) की आवश्यकता होगी जो Python कोड लिखने और सेव करने में सक्षम हो। Python के लिए कुछ लोकप्रिय IDE हैं: PyCharm, IDLE, और Visual Studio Code।

नई Python स्क्रिप्ट बनाने के लिए, बस नई फ़ाइल बनाकर उसे .py एक्सटेंशन के साथ सेव करें। फिर, आप उस फ़ाइल में अपना Python कोड लिख सकते हैं और स्क्रिप्ट चलाने हेतु उसे सेव कर सकते हैं।

क्या मैं Python स्क्रिप्ट को बैकग्राउंड में चला सकता/सकती हूँ?

हाँ, आप nohup कमांड का उपयोग करके Python स्क्रिप्ट को बैकग्राउंड में चला सकते हैं। उदाहरण के लिए:

nohup python script.py &

यह स्क्रिप्ट को बैकग्राउंड में चलाएगा और स्क्रिप्ट चलते समय भी आपको टर्मिनल का उपयोग जारी रखने देगा।

मैं कमांड लाइन से Python स्क्रिप्ट कैसे चलाऊँ?

कमांड लाइन से Python स्क्रिप्ट चलाने के लिए, आपके सिस्टम पर Python इंस्टॉल होना चाहिए। फिर, आप निम्न कमांड का उपयोग करके स्क्रिप्ट चला सकते हैं:

python script.py

विषय