📘 CodingMarble Learn

Python में डेटा प्रकार, ऑपरेटर और त्रुटियाँ

Python में हर मान का एक डेटा प्रकार है: संख्याएँ (int, float, complex), bool (True/False), None, अनुक्रम (str, list, tuple) और मैपिंग (dict)। म्यूटेबल प्रकार (list, dict) अपनी जगह बदल सकते हैं; इम्यूटेबल (int, float, bool, str, tuple) नहीं। ऑपरेटर: अंकगणितीय (+ − * / // % **), संबंधपरक (< > <= >= == !=), तार्किक (and, or, not), असाइनमेंट (= += …), पहचान (is) और सदस्यता (in)। प्राथमिकता क्रम तय करती है: ** सबसे ऊपर, or सबसे नीचे। रूपांतरण अंतर्निहित (अपने-आप) या स्पष्ट (int(), float(), str()) होता है। input() हमेशा स्ट्रिंग देता है; print() sep और end के साथ दिखाता है। त्रुटियाँ: सिंटैक्स, रनटाइम (एक्सेप्शन) और लॉजिकल।

🎬 कदम-दर-कदम कहानी

  1. हर मान का प्रकार होता है। संख्या, True/False, None, टेक्स्ट, लिस्ट, टपल और डिक्शनरी।
  2. लिस्ट अपनी जगह बदल सकती है और id वही रहती है। स्ट्रिंग नहीं बदलती; Python नई बनाता है।
  3. ऑपरेटर काम करते हैं: गणित, तुलना, and/or/not, मान देना, 'is' और 'in'।
  4. Python क्रम मानता है। पहले घात, फिर गुणा-भाग, फिर जोड़-घटाव। 2 + 3 * 4 ** 2 = 50।
  5. input() हमेशा टेक्स्ट देता है। "5" + "5" = "55"। पहले int() से बदलो तो 10 मिलेगा।
  6. आपकी बारी: दो संख्याएँ और ऑपरेटर चुनें, उत्तर और उसका प्रकार देखें।

टिप: 3D दृश्य को घुमाने के लिए खींचें। ज़ूम के लिए दो उंगलियाँ इस्तेमाल करें।

🤔 आम शंकाएँ और उनके जवाब

True = 1 है तो bool अलग प्रकार क्यों?

bool int का खास रूप है जिसके केवल दो मान हैं, जो शर्तों के लिए है। True + True = 2, पर bool हाँ/नहीं निर्णय के लिए है।

स्ट्रिंग इम्यूटेबल है तो s = s + '!' कैसे चलता है?

Python नई स्ट्रिंग बनाकर s नाम उस पर ले जाता है। पुरानी नहीं बदलती। नई id वाला नया ब्लॉक देखें।

== और is में क्या अंतर है?

== मान बराबर है या नहीं जाँचता; is जाँचता है कि दोनों नाम मेमोरी में एक ही ऑब्जेक्ट की ओर हैं या नहीं।

2 + 3 * 4 ** 2 का उत्तर 400 क्यों नहीं?

Python ** को * से पहले और * को + से पहले करता है। बाएँ से दाएँ करना गलत होगा। 3D की तीन पंक्तियाँ देखें।

input() संख्या क्यों नहीं देता?

कीबोर्ड अक्षर भेजता है, इसलिए input() हमेशा टेक्स्ट लौटाता है। बदलना आप तय करते हैं: int() या float()।

Python के डेटा प्रकार

मान का प्रकार देखने के लिए type(x)।

म्यूटेबल और इम्यूटेबल प्रकार

म्यूटेबल: नया ऑब्जेक्ट बनाए बिना मान अपनी जगह बदल सकता है: list, dict (और set)।

इम्यूटेबल: नहीं बदलता; 'बदलने' पर नई id वाला नया ऑब्जेक्ट बनता है: int, float, bool, complex, str, tuple।

L = [1, 2, 3]; L[0] = 5   # ठीक, वही id
s = 'cat';  s[0] = 'b'   # TypeError

Python में ऑपरेटर

ऑपरेटर प्राथमिकता

ऊँची से नीची:

  1. () कोष्ठक
  2. ** (दाएँ से बाएँ: 2**3**2 = 2**9 = 512)
  3. एकल +x −x
  4. * / // %
  5. + −
  6. तुलना < > == != …, is, in
  7. not
  8. and
  9. or

एक स्तर पर: बाएँ से दाएँ (** को छोड़कर)। 2 + 3 * 4 ** 2 = 2 + 3 * 16 = 2 + 48 = 50।

टाइप रूपांतरण

अंतर्निहित (implicit): डेटा न खोए, इसलिए Python अपने-आप बदलता है: 5 + 2.0 = 7.0 (int → float)।

स्पष्ट (explicit, टाइप कास्टिंग): फ़ंक्शन से बदलते हैं: int('25') → 25, float('3.5') → 3.5, str(10) → '10', int(7.9) → 7 (दशमलव कटता है), bool(0) → False। int('abc') से ValueError।

इनपुट और आउटपुट

input(संदेश) संदेश दिखाकर उपयोगकर्ता का लिखा स्ट्रिंग के रूप में लौटाता है। संख्या के लिए: n = int(input('n लिखें: '))।

print(मान, sep=' ', end='\n') मानों को sep से अलग करके और end पर ख़त्म करके दिखाता है। print(1, 2, 3, sep='-') → 1-2-3; print('Hi', end='!') → Hi! बिना नई पंक्ति।

त्रुटियाँ: सिंटैक्स, लॉजिकल और रनटाइम

मुख्य सूत्र और परिभाषाएँ

हल किए गए उदाहरण

1. निकालें: 17 // 5, 17 % 5, 17 / 5, 2 ** 4।

3, 2, 3.4, 16।

2. चरणों में निकालें: 10 - 4 * 2 ** 2 + 6 / 3

2 ** 2 = 4 → 10 - 4 * 4 + 6 / 3 → 16 और 2.0 → 10 - 16 + 2.0 = -4.0।

3. निकालें: not 5 > 3 or 4 < 6 and 2 == 3

पहले तुलना: not True or True and False → False or (True and False) → False or False → False।

4. आउटपुट? a = '7'; b = 3; print(a * b, int(a) * b)

777 21। स्ट्रिंग × int दोहराता है; int('7') * 3 = 21।

5. त्रुटि का प्रकार बताएँ: (i) print('Hi' (ii) x = 10 / 0 (iii) आयत का क्षेत्रफल = l + b

(i) सिंटैक्स (कोष्ठक बंद नहीं)। (ii) रनटाइम: ZeroDivisionError। (iii) लॉजिकल: चलता है पर सूत्र गलत।

6. a = [1, 2]; b = a; c = [1, 2]। a is b, a is c, a == c निकालें।

a is b → True (एक ही ऑब्जेक्ट)। a is c → False। a == c → True (मान बराबर)।

7. आउटपुट? print(10, 20, 30, sep='*', end='#')

10*20*30#

आम गलतियाँ

अभ्यास क्विज़

1. कौन-सा प्रकार इम्यूटेबल है?
2. 2 + 3 * 2 ** 2 का मान:
3. input() लौटाता है:
4. शून्य से भाग देने पर:
5. 'in' किस प्रकार का ऑपरेटर है?

अभ्यास: खुद जवाब दो

अपना जवाब लिखो या चुनो, फिर जाँचें दबाओ। अटको तो संकेत देखो; जवाब देने के बाद पूरा हल दिखेगा।

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

कक्षा 11 में Python के डेटा प्रकार कौन-से हैं?

संख्याएँ (int, float, complex), bool, None, अनुक्रम (str, list, tuple) और मैपिंग (dict)।

म्यूटेबल और इम्यूटेबल में क्या अंतर है?

म्यूटेबल (list, dict) अपनी जगह बदलते हैं; इम्यूटेबल (int, float, str, tuple) नहीं, बदलाव पर नया ऑब्जेक्ट बनता है।

Python में त्रुटियों के तीन प्रकार कौन-से हैं?

सिंटैक्स त्रुटि (व्याकरण), रनटाइम त्रुटि या एक्सेप्शन (चलते समय रुकना) और लॉजिकल त्रुटि (गलत परिणाम)।

यह कहाँ पढ़ाया जाता है

कनाडा (ओंटारियो)Grade 12A. Programming Concepts and Skills
रोमानियाClasa a XI-aModern user skills
सीबीएसई (भारत)कक्षा 11संगणनात्मक चिंतन और प्रोग्रामिंग - 1

पहले यह पढ़ें

आगे पढ़ें

इससे जुड़े पाठ

सभी कंप्यूटर विज्ञान पाठ