Python में Data Types क्या हैं in Hindi

Arpit Nageshwar
⏰ 6 min read

Python Data Types in Hindi – Python ke Built-in Data Types Kya Hai? Numeric, Sequence, Set, Mapping aur Mutable vs Immutable Complete Guide

Table of Contents

Introduction to Data Types in Hindi – Python Data Types Kya Hai?

  • Dekho, jab bhi hum Python seekhना शुरू करते हैं, तो सबसे पहला concept जो सामने आता है वो है Data Type। और सच कहूं तो अगर यह concept clear हो जाए, तो आगे की पूरी coding journey बहुत आसान हो जाती है।

  • Data Type यह बताता है कि किसी variable में जो value store की गई है, वह किस तरह की है – यानी वह एक number है, text है, या फिर true/false जैसी कोई condition है।

  • जैसे आप अपने कमरे में अलग-अलग चीज़ों को अलग-अलग जगह रखते हो – किताबें shelf में, कपड़े almirah में, पैसे locker में – वैसे ही Python भी हर तरह की value को उसकी nature के हिसाब से अलग data type में classify करता है।

  • अब यहां एक interesting बात यह है कि Python एक dynamically typed language है, यानी आपको variable बनाते time यह बताने की जरूरत नहीं पड़ती कि वह किस type का है। Python खुद ही value देखकर समझ जाता है।

  • उदाहरण के लिए अगर आप x = 10 लिखते हो, तो Python खुद समझ जाता है कि यह integer है। अगर x = "Hello" लिखते हो, तो वह string बन जाता है। आपको अलग से type mention नहीं करना पड़ता।

  • Python में हर value असल में एक object होती है, और हर object की एक class होती है – यही class उसका data type कहलाती है। इसीलिए अगर आप type() function use करके check करोगे, तो वह हमेशा class ही return करेगा।

  • चलो अब आगे बढ़ते हैं और देखते हैं कि Python में built-in data types कितनी categories में बंटे होते हैं।

Types of Built-in Data Types in Hindi – Numeric, Sequence, Set, Mapping

Python Built-in Data Types Data Types ke Types Numeric Type int, float, complex Sequence Type str, list, tuple, range Set Type set, frozenset Mapping Type dict Boolean Type bool (True, False) None Type NoneType Binary Type bytes, bytearray, memoryview

Python में built-in data types को main रूप से चार बड़ी categories में बांटा जाता है – Numeric, Sequence, Set और Mapping। चलिए एक-एक करके इन्हें अच्छे से समझते हैं, ताकि exam में भी confusion ना हो और coding करते time भी सही data type choose कर पाओ।

1. Numeric Data Types

  • यह category उन values को represent करती है जो numbers होती हैं। Python में numeric type के अंदर तीन types आते हैं – int, float और complex

  • int (Integer): यह whole numbers को represent करता है, चाहे वो positive हो, negative हो या zero। खास बात यह है कि Python में integer की कोई fixed limit नहीं होती, यह memory के हिसाब से जितना बड़ा चाहो उतना बड़ा number रख सकता है।

  • float (Floating Point): जब भी किसी number में decimal point हो, तो वह float category में आता है। जैसे 3.14 या 9.5, यह सब float values हैं।

  • complex: यह वो numbers होते हैं जिनमें एक real part और एक imaginary part होता है, जैसे 3+4j। यह ज्यादातर scientific calculations में use होता है।

x = 10          # int
y = 10.5        # float
z = 2 + 3j      # complex

print(type(x))   # <class 'int'>
print(type(y))   # <class 'float'>
print(type(z))   # <class 'complex'>

2. Sequence Data Types

  • Sequence वह data types होते हैं जिनमें values एक particular order में arrange रहती हैं, और हर value का एक index number होता है जिससे उसे access किया जा सकता है।

  • str (String): यह characters का एक sequence होता है, जिसे single या double quotes में लिखा जाता है। Strings immutable होती हैं, यानी एक बार बनने के बाद उन्हें directly change नहीं किया जा सकता।

  • list: यह एक ऐसा collection होता है जिसमें आप अलग-अलग type की values एक साथ रख सकते हो, और सबसे बड़ी बात यह है कि list को बाद में modify भी किया जा सकता है।

  • tuple: यह भी list जैसा ही दिखता है, बस फर्क यह है कि tuple को एक बार बनाने के बाद change नहीं किया जा सकता, यानी यह immutable होता है।

  • range: यह numbers की एक sequence generate करता है, जो ज्यादातर loops में use होती है, जैसे range(1, 10)

s = "Python"          # str
l = [1, "two", 3.0]    # list
t = (10, 20, 30)        # tuple
r = range(5)             # range

print(type(s))   # <class 'str'>
print(type(l))   # <class 'list'>
print(type(t))   # <class 'tuple'>
print(type(r))   # <class 'range'>

3. Set Data Types

  • Set एक ऐसा collection होता है जिसमें unique values ही store होती हैं, यानी उसमें duplicate values allow नहीं होतीं, और इसमें values का कोई fixed order भी नहीं होता।

  • set: इसे curly brackets के अंदर values देकर बनाया जाता है, और यह mutable होता है यानी बाद में इसमें items add या remove किए जा सकते हैं।

  • frozenset: यह set जैसा ही होता है, बस इसे एक बार बनाने के बाद modify नहीं किया जा सकता, यानी यह immutable version है set का।

s1 = {1, 2, 3, 3, 2}     # set (duplicates apne aap remove ho jayenge)
s2 = frozenset([1, 2, 3])  # frozenset

print(s1)          # {1, 2, 3}
print(type(s2))    # <class 'frozenset'>

4. Mapping Data Type

  • Mapping type में values key-value pair के form में store होती हैं, यानी हर value को access करने के लिए एक unique key use की जाती है, index number नहीं।

  • dict (Dictionary): यह curly brackets के अंदर key: value pairs में लिखा जाता है, और यह real life में किसी डिक्शनरी जैसा ही काम करता है, जहां आप शब्द (key) से उसका meaning (value) ढूंढते हो।

student = {"name": "Rahul", "age": 21, "course": "BCA"}

print(student["name"])   # Rahul
print(type(student))      # <class 'dict'>

इन चार main categories के अलावा Python में दो और important data types हैं जिन्हें exam में अक्सर पूछा जाता है – bool (जो True या False value रखता है) और NoneType (जो किसी variable में "कोई value नहीं है" यह represent करने के लिए use होता है)। साथ ही bytes, bytearray और memoryview जैसे binary types भी होते हैं जो mostly file handling और networking में काम आते हैं।

Comparison of All Data Types in Hindi (Table)

अब तक जितने भी data types हमने पढ़े, उन सबको एक साथ compare करके देखना exam के लिए बहुत helpful रहता है। नीचे दी गई table में हर data type की category, syntax और mutability एक नज़र में देख सकते हो।

Data Type Category Example Mutable / Immutable
intNumeric10, -5, 0Immutable
floatNumeric3.14, 9.5Immutable
complexNumeric2+3jImmutable
strSequence"Python"Immutable
listSequence[1, 2, 3]Mutable
tupleSequence(1, 2, 3)Immutable
rangeSequencerange(5)Immutable
setSet{1, 2, 3}Mutable
frozensetSetfrozenset([1,2])Immutable
dictMapping{"a": 1}Mutable
boolBooleanTrue, FalseImmutable
NoneTypeNoneNoneImmutable

इस table को अगर आप एक बार अच्छे से समझ लो, तो exam में जो भी objective या short-answer question data types पर पूछा जाए, आराम से solve हो जाएगा।

Mutable vs Immutable Data Types in Hindi

Mutable vs Immutable Mutable (Change ho sakta hai) list dict set bytearray Immutable (Change nahi ho sakta) int, float, complex str tuple frozenset, bool Mutable object ka value change hone par uska id() same rehta hai Immutable object ki value change karne par naya object ban jaata hai
  • Mutable Data Types kya hote hain:
    वह data types जिनकी value को बनाने के बाद भी बदला जा सकता है, उन्हें Mutable कहा जाता है। जैसे list, dict और set – इनमें आप items add, remove या update कर सकते हो, और memory में उसी object का reference बना रहता है।

  • Immutable Data Types kya hote hain:
    वह data types जिनकी value को एक बार बनाने के बाद बदला नहीं जा सकता, उन्हें Immutable कहा जाता है। जैसे int, float, str, tuple, bool और frozenset – अगर आप इनकी value change करने की कोशिश करोगे, तो असल में Python पुराने object को बदलता नहीं है, बल्कि एक बिल्कुल नया object बना देता है।

  • id() function से समझें फर्क:
    सबसे आसान तरीका यह समझने का कि कोई data type mutable है या immutable, वह है id() function use करना। यह हर object का memory address जैसा एक unique number return करता है।

# Immutable example (str)
s = "Hello"
print(id(s))
s = s + " World"
print(id(s))   # id change ho jayega, kyunki naya object bana

# Mutable example (list)
l = [1, 2, 3]
print(id(l))
l.append(4)
print(id(l))   # id same rahega, kyunki wahi object modify hua
  • Yeh kyun important hai:
    जब आप किसी function में argument pass करते हो, तो mutable objects के case में अगर function के अंदर value change होती है, तो वह original variable पर भी असर डालती है। लेकिन immutable objects के case में ऐसा नहीं होता, क्योंकि function के अंदर एक नया object बन जाता है।

  • Dictionary keys के context में भी फर्क पड़ता है:
    Python में dictionary की key हमेशा immutable data type की होनी चाहिए, इसीलिए list को dictionary की key नहीं बना सकते, लेकिन tuple को बना सकते हैं, क्योंकि tuple immutable होता है।

d = {}
d[(1, 2)] = "valid key"     # tuple immutable hai, isliye chalega
# d[[1, 2]] = "invalid key" # list mutable hai, isliye error aayega

Exam ke liye Important Points – Yaad Rakhne Wali Baatein

  • Python में कुल mainstream categories चार हैं – Numeric, Sequence, Set और Mapping – इन्हें category के हिसाब से grouped रखना exam objective questions में काफी काम आता है।

  • List, Dictionary और Set – यह तीनों mutable हैं, बाकी सारे common data types (int, float, str, tuple, bool, frozenset) immutable हैं। यह लाइन याद कर लो तो half confusion खत्म हो जाएगी।

  • type() function से हमेशा किसी भी variable का data type check किया जा सकता है, और यह exam में practical questions में बार-बार पूछा जाता है।

  • String एक sequence है, लेकिन फिर भी वह immutable होती है – यह एक common trick question होता है, इसे ध्यान से याद रखना।

  • Set में duplicate values allow नहीं होतीं और order भी guaranteed नहीं होता, जबकि list और tuple दोनों में order maintained रहता है।

Common Confusions jo Students Karte Hain

  • बहुत से students list और tuple को एक जैसा समझ लेते हैं, क्योंकि दोनों index से access होते हैं, लेकिन असली फर्क mutability का है – list बदल सकते हो, tuple नहीं।

  • कई बार students सोचते हैं कि set और dictionary एक जैसे होते हैं क्योंकि दोनों curly brackets में लिखे जाते हैं, लेकिन set सिर्फ values रखता है जबकि dictionary key-value pairs रखती है।

  • एक common गलतफहमी यह भी होती है कि boolean कोई अलग independent type है, जबकि असल में Python में bool, int का ही एक subtype है, इसीलिए True + True करने पर answer 2 आता है।

  • Beginners अक्सर सोचते हैं कि string को index से character change किया जा सकता है, जबकि string immutable होने की वजह से ऐसा directly possible नहीं है, इसके लिए नई string बनानी पड़ती है।

print(True + True)   # Output: 2, kyunki bool asal me int ka subtype hai

s = "Python"
# s[0] = "J"   # Yeh error dega, string immutable hai
s = "J" + s[1:]
print(s)        # Jython

Frequently Asked Questions (FAQ) – Python Data Types in Hindi

Python में मुख्य रूप से चार categories होती हैं – Numeric, Sequence, Set और Mapping – इनके अलावा Boolean, None और Binary types (bytes, bytearray) भी built-in data types में गिने जाते हैं।

Mutable data types (list, dict, set) की value बनने के बाद भी बदली जा सकती है, जबकि Immutable data types (int, str, tuple, bool) की value एक बार set होने के बाद बदली नहीं जा सकती, बदलने पर नया object बन जाता है।

List mutable होती है यानी उसे modify किया जा सकता है, जबकि Tuple immutable होती है यानी एक बार बनने के बाद उसकी values change नहीं की जा सकतीं।

Python में type() function का उपयोग करके किसी भी variable का data type आसानी से check किया जा सकता है, जैसे type(x)

Dictionary की key हमेशा immutable data type की होनी चाहिए, जैसे int, str या tuple। List जैसी mutable data type को key नहीं बनाया जा सकता।

Arpit Nageshwar

✍️ Arpit Nageshwar

Post-graduated | Web Developer | +3 yr Experience | IIT Kharagpur Certified