शुरुआत से Pythonशुरुआतीपाठ 1007 मिनट का पाठ

वेरिएबल्स, नंबर और टेक्स्ट

पूर्ण संख्याएँ (whole numbers), दशमलव संख्याएँ (decimals) और टेक्स्ट अलग-अलग तरह की वैल्यूज़ होती हैं। इनमें से हर एक का इस्तेमाल करना, उन्हें आपस में बदलना और f-strings से उन्हें साफ़-सुथरे ढंग से प्रिंट करना सीखें।

पाठ वीडियो में

60 सेकंड में

वेरिएबल्स, नंबर और टेक्स्ट

पूर्ण संख्याएँ (whole numbers), दशमलव संख्याएँ (decimals) और टेक्स्ट अलग-अलग तरह की वैल्यूज़ होती हैं। इनमें से हर एक का इस्तेमाल करना, उन्हें आपस में बदलना और f-strings से उन्हें…

1/4
आसान शब्दों में
रसोई में आप चावल एक जार में, तेल एक बोतल में और नमक एक छोटे डिब्बे में रखते हैं। हर बर्तन उसके अंदर रखी चीज़ के हिसाब से होता है। पायथन में भी अलग-अलग तरह की वैल्यूज़ होती हैं: पूर्ण संख्याएँ, दशमलव संख्याएँ और टेक्स्ट। आपके पास किस तरह की वैल्यू है, यह जानकर आपको पता चलता है कि आप उसके साथ क्या कर सकते हैं।
पायथन में हर वैल्यू का एक type (प्रकार) होता है। यहाँ वे तीन प्रकार दिए गए हैं जिनका आप सबसे ज़्यादा इस्तेमाल करेंगे:
प्रकार (Type)पायथन में नामउदाहरणइसके लिए उपयुक्त
पूर्ण संख्या (Whole number)int7, 250, -3गिनती: रन, छात्र, चीज़ें
दशमलव संख्या (Decimal number)float7.5, 99.9, 0.25मापना: वज़न, रन रेट, प्रतिशत
टेक्स्टstr (स्ट्रिंग)"Priya", "Chennai", "42"नाम, संदेश, लेबल
आप type() का इस्तेमाल करके पायथन से पूछ सकते हैं कि कोई वैल्यू किस प्रकार की है।
Python: checking typespython
runs = 45
average = 38.5
player = "Smriti"
print(type(runs))
print(type(average))
print(type(player))

नंबर (संख्याएँ)

आप int और float वैल्यूज़ के साथ गणितीय हिसाब-किताब (maths) कर सकते हैं। कुछ अतिरिक्त ऑपरेटर्स भी काम आते हैं:
Python: more mathspython
balls = 23
print(balls // 6, "overs and", balls % 6, "balls")   # // whole part, % remainder
print(2 ** 3)                                        # ** means "to the power of"
print(round(187 / 20, 2))                            # round to 2 decimal places
23 // 6 का मान 3 है (तीन पूरे ओवर) और 23 % 6 का मान 5 है (पाँच गेंदें बचीं)। तो 23 गेंदों का मतलब है 3 ओवर और 5 गेंदें।

टेक्स्ट

टेक्स्ट (एक स्ट्रिंग) को उद्धरण चिह्नों (quotes) के अंदर लिखा जाता है, चाहे सिंगल '…' हों या डबल "…"। आप + का इस्तेमाल करके स्ट्रिंग्स को जोड़ सकते हैं, और स्ट्रिंग्स में काम के टूल्स होते हैं जिन्हें methods कहा जाता है, जिनका उपयोग आप डॉट (.) लगाकर करते हैं।
Python: playing with textpython
city = "mumbai"
print(city.upper())         # MUMBAI
print(city.title())         # Mumbai
print(len(city))            # 6 letters
print("Hello " + "Mumbai")  # joining two strings

f-strings: टेक्स्ट और नंबरों को मिलाने का आसान तरीका

शुरुआती कोट से ठीक पहले अक्षर f लगाएँ। फिर कर्ली ब्रैकेट्स { } के अंदर जो कुछ भी होगा, वह अपनी वैल्यू से बदल दिया जाएगा। इसे f-string कहा जाता है।
Python: f-stringspython
name = "Arjun"
marks = 87
print(f"{name} scored {marks} marks.")
print(f"Run rate: {187 / 20:.2f}")   # :.2f shows 2 decimal places

टाइप्स को आपस में बदलना

कभी-कभी कोई नंबर टेक्स्ट के रूप में आता है, उदाहरण के लिए स्कोरबोर्ड या किसी फ़ाइल से पढ़ा गया "12"। जब तक आप इसे बदल नहीं लेते, तब तक आप इसके साथ गणितीय हिसाब-किताब नहीं कर सकते।
आपके पास हैआपको चाहिएउपयोग करेंपरिणाम
"12" (टेक्स्ट)एक पूर्ण संख्याint("12")12
"7.5" (टेक्स्ट)एक दशमलव संख्याfloat("7.5")7.5
36 (नंबर)टेक्स्टstr(36)"36"
हैरानी की बात
  • "12" + "8" देता है "128": दो टेक्स्ट आपस में जुड़ गए
  • "12" + 8 एरर देता है: टेक्स्ट और नंबर को जोड़ा नहीं जा सकता
आपका क्या मतलब था
  • int("12") + 8 देता है 20
  • f"Score: {12 + 8}" देता है Score: 20

यहाँ टाइप करने की सुविधा क्यों नहीं है

आपके अपने कंप्यूटर पर, पायथन में input() होता है, जो आपके कुछ टाइप करने का इंतज़ार करता है। इस कोर्स में इस्तेमाल होने वाला ब्राउज़र रनर टाइपिंग का इंतज़ार नहीं कर सकता, इसलिए input() यहाँ उपलब्ध नहीं है। इसके बजाय, हम कोड में ही वैल्यूज़ सेट करते हैं। अलग-अलग वैल्यूज़ आज़माने के लिए, बस नंबर बदलें और फिर से Run दबाएँ। असल काम में भी ऐसे प्रोग्राम बहुत आम हैं जो अपना डेटा किसी वेरिएबल या फ़ाइल से पढ़ते हैं।

वेरिएबल्स के अच्छे नाम

  • अंडरस्कोर से जुड़े छोटे अक्षरों (lower-case) वाले शब्दों का इस्तेमाल करें: total_runs, price_each।
  • ऐसे नाम चुनें जो बताते हों कि अंदर क्या है: x से बेहतर marks है।
  • नाम किसी अंक (digit) से शुरू नहीं हो सकते: 2nd_score की अनुमति नहीं है; score_2 सही है।
  • बड़े (upper) और छोटे (lower) अक्षर अलग-अलग नाम माने जाते हैं: Total और total दो अलग-अलग वेरिएबल्स हैं।
इसे आज़माएँ। अपनी उम्र के लिए एक वेरिएबल बनाएँ। सही नंबर के साथ "In 5 years I will be …" प्रिंट करने के लिए एक f-string का इस्तेमाल करें। अगर यह पहली बार में ही काम कर गया तो बहुत बढ़िया, और अगर आपने इसे ठीक करके चलाया तो भी शाबाश!

और देखें और पढ़ें

लैब

क्रिकेट स्कोरबोर्ड का सारांश जिसे पायथन हिसाब लगाकर साफ़-सुथरे ढंग से प्रिंट करता है।

~10 min

समस्या

एक टीम ने बल्ले से कुछ रन बनाए, और अतिरिक्त रन (extras) स्कोरबोर्ड पर टेक्स्ट के रूप में लिखे गए थे। इस शुरुआती कोड को पूरा करें:

  1. total_runs बनाएँ: बल्ले के रन और अतिरिक्त रन को जोड़कर। अतिरिक्त रन टेक्स्ट हैं, इसलिए पहले उन्हें int() से बदल लें।
  2. run_rate बनाएँ: कुल रनों को ओवरों से भाग देकर। यह एक दशमलव संख्या होगी।
  3. summary को एक f-string बनाएँ जिसमें टीम का नाम और कुल रन शामिल हों, उदाहरण के लिए Chennai Stars scored 187 runs।
  4. सारांश और दशमलव के 2 स्थानों तक राउंड किया गया रन रेट प्रिंट करें। Run दबाएँ।

फिर Check दबाएँ। इसके बाद नंबर बदलकर देखें: आपका कोड फिर भी काम करना चाहिए।

प्रैक्टिस लैब

कोड में बदलाव करें और इसे रन करें। Python आपके ब्राउज़र में चलता है — हमारे सर्वर पर कुछ नहीं भेजा जाता।

आउटपुट

कोई आउटपुट नहीं। वैल्यूज़ देखने के लिए print(...) जोड़ें।

आपका काम तब पूरा होगा जब

कठिन सवाल

उत्तर देखने से पहले ख़ुद जवाब देने की कोशिश करें। अगर आप इनके जवाब दे सकते हैं, तो आप पाठ समझ गए हैं।

Q1अगर आपने <code>total_runs = str(bat_runs) + extras_text</code> लिखा होता, तो आपको क्या मिलता, और क्यों?दिखाएं

आपको टेक्स्ट "17512" मिलता। दोनों हिस्से स्ट्रिंग हैं, और + स्ट्रिंग्स को जोड़ने के बजाय एक-दूसरे के आगे चिपका देता है। गणितीय रूप से जोड़ने के लिए, दोनों तरफ नंबर होने चाहिए: bat_runs + int(extras_text)।

Q2<code>run_rate</code> एक float क्यों है, जबकि 187 और 20 दोनों पूर्ण संख्याएँ हैं?दिखाएं

पायथन 3 में, / हमेशा एक float देता है, क्योंकि भाग देने पर अक्सर दशमलव वाला हिस्सा आता है (187 / 20 = 9.35)। अगर आपको सिर्फ़ पूर्ण संख्या वाला हिस्सा चाहिए था, तो आप // का इस्तेमाल करते, जो 9 देता।

जारी रखने के लिए कृपया साइन इन करें।

अक्सर पूछे जाने वाले सवाल

0.1 + 0.2 का परिणाम 0.30000000000000004 क्यों प्रिंट होता है?

कंप्यूटर दशमलव संख्याओं को बाइनरी में स्टोर करते हैं, और 0.1 जैसे कुछ दशमलव सटीक रूप से स्टोर नहीं किए जा सकते। यह मामूली सा अंतर कभी-कभी सामने आ जाता है। लगभग हर प्रोग्रामिंग भाषा में यह सामान्य बात है। प्रिंट करते समय round() का इस्तेमाल करें, और पैसों के मामले में सटीक रहने के लिए आप पूरे पैसों में हिसाब रख सकते हैं।

क्या मुझे सिंगल कोट्स इस्तेमाल करने चाहिए या डबल कोट्स?

दोनों काम करते हैं, बस शुरुआत और अंत एक जैसे होने चाहिए। जब आपके टेक्स्ट के अंदर एपोस्ट्रोफी (') हो, तो डबल कोट्स काम आते हैं: "Ravi's bat"।

अगर मैं किसी वेरिएबल को बनाने से पहले इस्तेमाल करूँ तो क्या होगा?

पायथन एक NameError के साथ रुक जाता है, जिसका मतलब है "मैं इस नाम को नहीं जानता"। पक्का करें कि वेरिएबल बनाने वाली लाइन पहले आए, और स्पेलिंग की जाँच करें। पाठ 7 इसी तरह की गलतियों (errors) के बारे में है।

क्या कोई वेरिएबल अपनी वैल्यू बदल सकता है?

हाँ। score = 10 और बाद में score = score + 4 इसे 14 बना देता है। नाम अब नई वैल्यू की ओर संकेत करता है। इसीलिए इन्हें variables (परिवर्तनशील) कहा जाता है।

पाठ का टेस्ट

5 सवाल। पास होने और इस पाठ को पूरा करने के लिए 3 सही होने चाहिए (60%)।

टेस्ट देने और अपनी प्रोग्रेस सेव करने के लिए साइन इन करें