टर्मिनल, फ़ोल्डर और आपका पहला प्रोजेक्ट
टर्मिनल से अपने फ़ोल्डरों में घूमें, एक प्रोजेक्ट फ़ोल्डर बनाएं, फ़ाइलें चलाएं, और जानें कि पायथन का इंटरैक्टिव शेल (REPL) कब सही टूल है।
आप कैसे सीखना चाहते हैं?
वह समस्या जिसे हम हल कर रहे हैं
पिछले अध्याय में आपने पायथन इंस्टॉल किया और एक फ़ाइल चलाई। लेकिन उसमें एक चीज़ चुपचाप हुई थी — फ़ाइल चलाते समय टर्मिनल ठीक उसी फ़ोल्डर में खुला था। VS Code ने यह काम आपके लिए कर दिया था।
हमेशा ऐसा नहीं होगा। अगर टर्मिनल किसी दूसरे फ़ोल्डर में है, तो आपको खुद फ़ाइल के फ़ोल्डर में जाना होगा। यही "जाना" नए लोगों को सबसे ज़्यादा अटकाता है। कोड ठीक है, पायथन ठीक है, लेकिन टर्मिनल किसी दूसरे फ़ोल्डर में बैठा है — और पायथन कह रहा है कि फ़ाइल ही नहीं है।
जॉब में आप यह काम दिन में सैकड़ों बार करेंगे। इसलिए आज हम टर्मिनल को एक अनजान काली स्क्रीन से एक जाने-पहचाने टूल में बदल देंगे।
इस अध्याय के अंत तक आप कर पाएंगे
- बताना कि टर्मिनल अभी किस फ़ोल्डर में है
- एक फ़ोल्डर से दूसरे फ़ोल्डर में जाना, और एक स्टेप पीछे आना
- एक प्रोजेक्ट फ़ोल्डर बनाकर उसके अंदर फ़ाइल चलाना
- पायथन का इंटरैक्टिव शेल (REPL) खोलना और बंद करना
- REPL और
.pyफ़ाइल का फ़र्क़ समझना — यह एक गलतफ़हमी बहुत समय बर्बाद करती है
पहले से क्या आना चाहिए: पायथन इंस्टॉल करना और अपना पहला प्रोग्राम चलाना।
टर्मिनल असल में क्या है
टर्मिनल वह जगह है जहां आप माउस से क्लिक करने के बजाय टाइप करके कंप्यूटर को कमांड देते हैं। और हर टर्मिनल विंडो हमेशा किसी न किसी फ़ोल्डर के अंदर "खड़ी" रहती है। उस फ़ोल्डर को करंट डायरेक्टरी कहते हैं — यानी मौजूदा फ़ोल्डर।
यही मुख्य बात है। जब आप python hello.py लिखते हैं, तो असल में आप कह रहे हैं: "मैं अभी जिस फ़ोल्डर में हूं, वहां की `hello.py` फ़ाइल चलाओ।" अगर फ़ाइल किसी दूसरे फ़ोल्डर में है, तो पायथन उसे नहीं ढूंढ पाएगा — क्योंकि वह कहीं और देखता ही नहीं।
इस अध्याय की कमांड विंडोज़ के PowerShell, macOS के Terminal और लिनक्स के Terminal — तीनों में लगभग एक जैसी हैं। जहां अलग हैं, वहां दोनों दिखाई गई हैं।
विंडोज़ पर PowerShell खोलने पर आमतौर पर कुछ ऐसा दिखेगा:
PS C:\Users\Rafi>macOS पर कुछ ऐसा:
rafi@MacBook ~ %और लिनक्स पर कुछ ऐसा:
rafi@laptop:~$इस लाइन को प्रॉम्प्ट कहते हैं — टर्मिनल आपकी कमांड का इंतज़ार कर रहा है। विंडोज़ पर C:\Users\Rafi वाला हिस्सा बताता है कि आप अभी कहां हैं। macOS और लिनक्स पर ~ का मतलब है आपका होम फ़ोल्डर।
चार कमांड, जिनसे काम चल जाता है
pwd — मैं कहां हूं?
pwdविंडोज़ के PowerShell में जवाब ऐसे आता है:
Path
----
C:\Users\RafimacOS या लिनक्स पर सिर्फ़ पाथ आता है:
/home/rafi(macOS पर पाथ /Users/rafi होता है।)
ls — यहां क्या-क्या है?
lsयह फ़ोल्डरों और फ़ाइलों की एक लिस्ट दिखाएगा। ls तीनों सिस्टम पर काम करता है; विंडोज़ पर इसी काम के लिए एक पुरानी कमांड dir भी है। फ़ाइल चलाने से पहले ls से देख लेना अच्छी आदत है — जो फ़ाइल आप चलाना चाहते हैं, वह सच में लिस्ट में है या नहीं।
cd — दूसरे फ़ोल्डर में जाओ
cd python-labएक स्टेप पीछे जाने के लिए दो डॉट:
cd ..और कहीं से भी सीधे होम फ़ोल्डर में लौटने के लिए:
cd ~ये तीनों कमांड विंडोज़, macOS और लिनक्स पर एक ही तरह चलती हैं।
टाइपिंग कम करें। फ़ोल्डर या फ़ाइल के नाम के पहले दो-तीन अक्षर लिखकर Tab दबाएं — टर्मिनल बाकी नाम खुद भर देगा। नाम में गलती की सबसे बड़ी वजह हाथ से टाइप करना है, और Tab उसे खत्म कर देता है।
mkdir — नया फ़ोल्डर बनाओ
mkdir lesson-02एक प्रोजेक्ट फ़ोल्डर सेट करें
सीखते समय सारी फ़ाइलें डेस्कटॉप पर बिखेर दें, तो एक हफ़्ते बाद कुछ नहीं मिलता। इसलिए एक ही जगह तय कर लें, और हर अध्याय के लिए अलग फ़ोल्डर बनाएं। पिछले अध्याय में आपने होम फ़ोल्डर में python-lab बनाया था; अब उसके अंदर इस अध्याय का फ़ोल्डर बनाएं:
cd ~
cd python-lab
mkdir lesson-02
cd lesson-02
pwdअगर python-lab अभी तक नहीं है, तो cd ~ के बाद mkdir python-lab चला लें। ये कमांड तीनों सिस्टम पर एक जैसी हैं।
विंडोज़ पर आखिरी कमांड का जवाब होना चाहिए:
Path
----
C:\Users\Rafi\python-lab\lesson-02लिनक्स पर:
/home/rafi/python-lab/lesson-02macOS पर पाथ /Users/rafi से शुरू होगा। Rafi या rafi की जगह आपका अपना यूज़रनेम होगा।
अब इस फ़ोल्डर में notes.py नाम की एक फ़ाइल बनाएं, और उसमें लिखें:
print("Folder:", "lesson-02")
print("Squares:", 2 * 2, 3 * 3, 4 * 4)और चलाएं — विंडोज़ पर:
python notes.pymacOS या लिनक्स पर:
python3 notes.pyFolder: lesson-02
Squares: 4 9 16पायथन का इंटरैक्टिव शेल
टर्मिनल में सिर्फ़ python (macOS और लिनक्स पर python3) लिखकर Enter दबाएं, तो पायथन खुद खुल जाता है:
python3Python 3.12.3 (main, Aug 31 2026, 10:18:26) [GCC 13.3.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>>पहली लाइन आपके कंप्यूटर पर अलग होगी — उसमें आपके पायथन का वर्ज़न, एक तारीख और ऑपरेटिंग सिस्टम का नाम होता है (विंडोज़ पर आखिर में on win32 होता है, macOS पर on darwin)। >>> का निशान हर जगह एक जैसा है, और इसका मतलब है कि पायथन अब आपकी लाइन का इंतज़ार कर रहा है। यहां जो भी लिखेंगे, उसका जवाब तुरंत मिलेगा:
>>> 2 + 3
5
>>> "Python"
'Python'
>>> len("terminal")
8इसे REPL कहते हैं — Read, Eval, Print, Loop: पढ़ो, चलाओ, प्रिंट करो, फिर से। कोई छोटी चीज़ चेक करने के लिए यह बहुत काम का है: कोई कैलकुलेशन सही है या नहीं, या कोई फ़ंक्शन क्या लौटाता है।
बाहर निकलने के लिए:
>>> exit()वह फ़र्क़ जो बहुतों का समय बर्बाद करता है: REPL में2 + 3लिखें तो वह खुद ही5दिखा देता है। लेकिन एक.pyफ़ाइल में सिर्फ़2 + 3लिखकर चलाएं, तो कुछ भी नहीं दिखता — पायथन कैलकुलेशन करता है, रिज़ल्ट फेंक देता है, और चुप रहता है। फ़ाइल में रिज़ल्ट देखना हो तो
जब कुछ टूट जाए
python : The term 'python' is not recognized... (विंडोज़) या command not found: python (macOS, लिनक्स) विंडोज़ पर पायथन PATH में नहीं है — पिछले अध्याय का "जब कुछ टूट जाए" वाला हिस्सा देखें: इंस्टॉलर फिर से चलाकर Modify में बॉक्स टिक करना होगा। macOS और लिनक्स पर कमांड का नाम python3 है।
can't open file '...notes.py': [Errno 2] No such file or directory टर्मिनल गलत फ़ोल्डर में है, या फ़ाइल के नाम में टाइपो है। pwd से देखें कि आप कहां हैं, फिर ls से देखें कि फ़ाइल वहां है या नहीं।
cd : Cannot find path ... because it does not exist (विंडोज़) या cd: no such file or directory (macOS, लिनक्स) फ़ोल्डर अभी बना ही नहीं है, या नाम में गलती है। mkdir से बना लें, और अगली बार नाम लिखते समय Tab दबाएं।
टर्मिनल अटक गया है, सिर्फ़ >>> दिख रहा है आप REPL के अंदर हैं, बाहर नहीं। यहां ls या python notes.py काम नहीं करेंगे — ये टर्मिनल की कमांड हैं, पायथन की नहीं। exit() लिखकर बाहर आएं।
फ़ोल्डर के नाम में स्पेस है पूरा नाम कोट्स के अंदर लिखें: cd "my python lab"। यह तीनों सिस्टम पर काम करता है। बिना स्पेस वाले नाम रखें तो यह समस्या आएगी ही नहीं — इसलिए python-lab, my_notes जैसे नाम बेहतर हैं।
चरण 4 / 6 — अनुमान
अपनी समझ की जाँच करें
दो लाइनों वाली इस फ़ाइल को python notes.py से चलाया जाता है। टर्मिनल में क्या दिखेगा?
2 + 3
print("done")- Adone
- Bकुछ नहीं — फ़ाइल एरर देगी
- C5
- D5 done
notes.py फ़ाइल lesson-02 फ़ोल्डर के अंदर है, लेकिन टर्मिनल उससे एक स्टेप ऊपर, python-lab फ़ोल्डर में खड़ा है। अब python notes.py चलाने पर क्या होगा?
- Aपायथन एरर देगा कि फ़ाइल खोली नहीं जा सकती — वह सिर्फ़ मौजूदा फ़ोल्डर में ढूंढता है
- Bपायथन सब-फ़ोल्डरों में भी ढूंढकर फ़ाइल चला देगा
- Cफ़ाइल चलेगी, लेकिन आउटपुट नहीं दिखेगा
- Dपायथन पूछेगा कि फ़ाइल कहां है
आपके टर्मिनल में अभी >>> दिख रहा है, और आप फ़ोल्डर की फ़ाइलों की लिस्ट देखना चाहते हैं। क्या करेंगे?
- A`print(ls)` लिखेंगे
- Bटर्मिनल विंडो बंद करके नई खोलेंगे, यही एकमात्र तरीका है
- C`exit()` लिखकर REPL से बाहर आएंगे, फिर `ls` चलाएंगे
- Dसीधे `ls` लिखेंगे — REPL में टर्मिनल की कमांड काम करती हैं
उत्तर देने के लिए अकाउंट आवश्यक है
अपने उत्तर जाँचने के लिए साइन इन करें
प्रश्न ऊपर दिए गए हैं, और मन में उत्तर सोचना ही मुख्य कार्य है। सही उत्तर, व्याख्या और तीन-स्तरीय संकेत देखने के लिए साइन इन करें।
आपकी बारी
टर्मिनल से, सिर्फ़ कमांड के ज़रिए:
python-labफ़ोल्डर के अंदरpracticeनाम का एक फ़ोल्डर बनाएं- उसके अंदर जाएं और
pwdसे पक्का करें - वहां
about.pyनाम की एक फ़ाइल बनाएं, जो आपका नाम और आज की तारीख प्रिंट करे python about.py(macOS या लिनक्स परpython3 about.py) से चलाएं- अब
cd ..से एक स्टेप पीछे आकर वही कमांड फिर से चलाएं — क्या हुआ?
आखिरी स्टेप ही असली सीख है। गलती को एक बार जानबूझकर देख लिया, तो बाद में असली काम में यह एरर आने पर आप एक सेकंड में वजह पकड़ लेंगे।
इस मिशन में और भी है
ऊपर आपने जो पढ़ा वही पूरा मिशन है — उसमें से कुछ नहीं काटा गया। प्रो इसमें जोड़ता है:
- भीतर वास्तव में क्या होता है — पायथन इसे कैसे निष्पादित करता है
- अभ्यास का संपूर्ण समाधान, चरण-दर-चरण स्पष्टीकरण के साथ
- कठिन अतिरिक्त अभ्यास
- इस विषय पर साक्षात्कार में क्या पूछा जाता है और उसका आदर्श उत्तर
चरण 6 / 6
चुनौती — अध्याय की क्विज़
सरल से कठिन — दस प्रश्न, अंतिम वाले जानबूझकर चुनौतीपूर्ण बनाए गए हैं।
क्विज़ देने के लिए साइन इन करें