What Are Data Types ?
Programming ki duniya mein sab kuch data hi haiтАФchahe wo kisi user ka naam ho, unka phone number ho, ya kisi game ka score. Lekin computer ko apne aap yeh nahi pata hota ki 10 ek number hai aur "Amit" ek naam hai. Computer ko yeh samjhane ke liye hum Data Types ka use karte hain.
Data Type yeh tay karta hai ki kisi variable mein kis tarah ki value store ki gayi hai aur us variable par aap kaun-kaun se kaam (operations) kar sakte hain. Jaise aap numbers ko aapas mein jod (+) sakte hain, lekin do naamon ko aapas mein multiply (*) nahi kar sakte.
(Integer Box)
-5
45
(String Box)
'Delhi'
'Python'
(Float Box)
99.9
-0.5
рдЬрдм рдЖрдк Python рдореЗрдВ рдХреЛрдИ Variable рдмрдирд╛рддреЗ рд╣реИрдВ, рддреЛ рдХрдВрдкреНрдпреВрдЯрд░ рдХреА Memory (RAM) рдХреЗ рдЕрдВрджрд░ рдКрдкрд░ рджрд┐рдЦрд╛рдП рдЧрдП
рдбрд╛рдпрдЧреНрд░рд╛рдо рдХреА рддрд░рд╣ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдХреИрдкреЗрд╕рд┐рдЯреА рд╡рд╛рд▓реЗ рдбрд┐рдмреНрдмреЗ (Containers) рдмрди рдЬрд╛рддреЗ рд╣реИрдВ:
int (Integer Box): рдЗрд╕рдореЗрдВ рд╕рд┐рд░реНрдл рдмрд┐рдирд╛ рдкреЙрдЗрдВрдЯ рд╡рд╛рд▓реЗ рдкреВрд░реЗ
рдирдВрдмрд░реНрд╕ (рдЬреИрд╕реЗ 10, -5) рд╣реА рдЖ рд╕рдХрддреЗ рд╣реИрдВред рдЗрд╕рдореЗрдВ рдЖрдк 'Rahul' рдЬреИрд╕рд╛ рдЯреЗрдХреНрд╕реНрдЯ рдирд╣реАрдВ
рдареВрд╕ рд╕рдХрддреЗред
str (String Box): рдпрд╣ рд╕рд┐рд░реНрдл рд╢рдмреНрджреЛрдВ (Text) рдХреЗ рд▓рд┐рдП рдмрдирд╛ рд╣реИред
Python рдХреА рдкрд╣рдЪрд╛рди рдпрд╣ рд╣реИ рдХрд┐ рдЗрд╕ рдбрд┐рдмреНрдмреЗ рдореЗрдВ рдЬрд╛рдиреЗ рд╡рд╛рд▓реА рд╣рд░ рдЪреАреЫ рд╕рд┐рдВрдЧрд▓ рдпрд╛ рдбрдмрд▓ рдХреЛрдЯреНрд╕ (' ' рдпрд╛
" ") рдХреЗ рдЕрдВрджрд░ рдмрдВрдж рд╣реЛрддреА рд╣реИред
float (Float Box): рдпрд╣ рддрд┐рдЬреЛрд░реА рд╕рд┐рд░реНрдл рдбреЗрд╕рд┐рдорд▓ (рдкреЙрдЗрдВрдЯ рд╡рд╛рд▓реЗ)
рдирдВрдмрд░реНрд╕ рдЬреИрд╕реЗ 3.14 рдпрд╛ 99.9 рдХреЛ рд╕рдВрднрд╛рд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдбрд┐рдЬрд╛рдЗрди рдХреА рдЧрдИ рд╣реИред
ЁЯТб рд╢реЙрд░реНрдЯрдХрдЯ рдмрд╛рдд: рдбреЗрдЯрд╛ рдЯрд╛рдЗрдк рдХреБрдЫ рдФрд░ рдирд╣реАрдВ, рдмрд▓реНрдХрд┐ рдХрдВрдкреНрдпреВрдЯрд░ рдХреЛ рдпрд╣ рдмрддрд╛рдиреЗ рдХрд╛ рддрд░реАрдХрд╛ рд╣реИ рдХрд┐ "рднрд╛рдИ,
рдпрд╣ рд╡рд╛рд▓рд╛ рдбреЗрдЯрд╛ рдЗрд╕ рдЯрд╛рдЗрдк рдХреЗ рдбрд┐рдмреНрдмреЗ рдореЗрдВ рдбрд╛рд▓реЛ рдФрд░ рдЗрд╕рдкрд░ рд╕рд┐рд░реНрдл рдпрд╣реА рд╡рд╛рд▓реЗ рдСрдкрд░реЗрд╢рдиреНрд╕ (рдЬреИрд╕реЗ рдкреНрд▓рд╕ рдпрд╛ рдорд╛рдЗрдирд╕)
рдХрд░рдиреЗ рдХреА рдЗрдЬрд╛рдЬрдд рджреЗрдирд╛!"
Dynamic Typing in Python
C++ ya Java jaisi purani languages mein variable banane se pehle batana padta tha ki usme kya
store hoga (jaise: int age = 25;).
Lekin Python ek Dynamically Typed language hai. Iska matlab aapko variable ka type pehle
se likhne ki zaroorat nahi hai.
Python ka system itna smart hai ki aap variable mein jo bhi value dalenge, wo apne aap uska type samajh jayega. Niche diye gaye code editor mein dekhiye kaise Python apne aap alag-alag data ko pehchanta hai:
# Python automatically detects the data type
age = 25 # Python ise automatically Integer (int) maan lega
name = "Rahul" # Python ise automatically String (str) maan lega
weight = 65.5 # Python ise automatically Float (float) maan lega
print(age)
print(name)
print(weight)
25 Rahul 65.5
Data Types Kyun Zaroori Hain? (TypeError Example)
Agar data types na hon toh program mein galat calculations ho sakti hain. Jaise agar aap ek text (String) ko kisi number (Integer) ke sath seedhe jodne ki koshish karenge, toh Python safety ke liye ek error show kar dega jise TypeError kehte hain. Isse aapka software crash hone se bach jata hai.
price = 500 # Yeh ek Number hai
tax = "50" # Quotes ke andar hone se yeh Text (String) hai
# Yeh line error degi kyunki number aur text direct nahi jud sakte
total = price + tax
print(total)
TypeError: unsupported operand type(s) for +: 'int' and 'str'
Advantages of Data Types (рдбреЗрдЯрд╛ рдЯрд╛рдЗрдкреНрд╕ рдХреЗ рдлрд╛рдпрджреЗ)
Aap soch rahe honge ki jab Python apne aap sab samajh leta hai, toh hume Data Types ke baare mein itna padhne ki kya zaroorat hai? Ek programmer ke liye Data Types ko samajhna isliye zaroori hai kyunki iske niriikhit bade fayde hain:
1. Code Security (рд╕реБрд░рдХреНрд╖рд╛): Yeh galat data operations ko rokta hai. Agar aap
galti se kisi user ki age wale number mein uska naam jodne lagenge, toh Python ka compiler ya
interpreter use wahi rok dega. Isse data corruption nahi hota.
2. Memory Optimization (рдореЗрдореЛрд░реА рдХрд╛ рд╕рд╣реА рдЗрд╕реНрддреЗрдорд╛рд▓): Computer ki memory (RAM) mein
har data type alag jagah leta hai. Ek text ko store karne mein zyada space lagta hai jabki ek
chhote number ko kam. Data types ki wajah se computer system sahi se memory allocate kar pata
hai.
3. Better Performance & Speed (рдмреЗрд╣рддрд░ рд╕реНрдкреАрдб): Jab computer ko pehle se pata hota
hai ki samne wala data ek integer (number) hai, toh wo uspar calculations bohot tezi se karta
hai. Agar use har baar data ko check karna pade, toh aapka program slow ho jayega.
4. Readability and Debugging (рдХреЛрдб рдХреЛ рд╕рдордЭрдирд╛ рдЖрд╕рд╛рди): Sahi data types ka use karne
se code saaf dikhta hai aur jab code mein koi galti (bug) aati hai, toh error message padh kar
turant samajh aa jata hai ki problem kahan par hai.
How Python Handles Data Types in Memory
Python mein har data type ek Object ki tarah treat hota hai. Jab aap likhte hain
x = 10, toh Python memory mein 10 naam ka ek object banata hai aur x
ko uska ek pointer (address label) bana deta hai.
Chaliye ek live code example se dekhte hain ki agar hum kisi data type par galat operation karein, toh kya hota hai:
price = 500 # Yeh ek Number hai
tax = "50" # Quotes ke andar hone se yeh Text (String) hai
# Yeh line error degi kyunki number aur text direct nahi jud sakte
total = price + tax
print(total)
TypeError: unsupported operand type(s) for +: 'int' and 'str'
Python ke Main Data Types
Python рдХреА рд╕рдмрд╕реЗ рдмрдбрд╝реА рдЦреВрдмреА рдпрд╣ рд╣реИ рдХрд┐ рдЗрд╕рдореЗрдВ рдЕрд▓рдЧ-рдЕрд▓рдЧ рддрд░рд╣ рдХреЗ рдбреЗрдЯрд╛ рдХреЛ рд╕рдВрднрд╛рд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдмреЗрд╣рдж рддрд╛рдХрддрд╡рд░ рдбреЗрдЯрд╛ рд╕реНрдЯреНрд░рдХреНрдЪрд░реНрд╕ рдФрд░ рдбреЗрдЯрд╛ рдЯрд╛рдЗрдкреНрд╕ рдмрдиреЗ рд╣реБрдП рд╣реИрдВред рдХрд┐рд╕реА рднреА рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЛ рдмрдирд╛рддреЗ рд╕рдордп рд╣рдореЗрдВ рд╕рд┐рд░реНрдл рдирдВрдмрд░реНрд╕ рд╕реЗ рдХрд╛рдо рдирд╣реАрдВ рдЪрд▓рддрд╛; рд╣рдореЗрдВ рдпреВрдЬрд╝рд░ рдХреА рд▓рд┐рд╕реНрдЯ рдмрдирд╛рдиреА рдкрдбрд╝рддреА рд╣реИ, рдЙрдирдХреА рдпреВрдирд┐рдХ рдЖрдИрдбреА (ID) рд╕реНрдЯреЛрд░ рдХрд░рдиреА рдкрдбрд╝рддреА рд╣реИ рдФрд░ рдХреА-рд╡реИрд▓реНрдпреВ (Key-Value) рдХрд╛ рдЬреЛрдбрд╝рд╛ рднреА рд╕рдВрднрд╛рд▓рдирд╛ рдкрдбрд╝рддрд╛ рд╣реИред
рдЗрди рд╕рднреА рдХреЛ рдЖрд╕рд╛рдиреА рд╕реЗ рд╕рдордЭрдиреЗ рдХреЗ рд▓рд┐рдП Python рдиреЗ рдЕрдкрдиреЗ рдбреЗрдЯрд╛ рдЯрд╛рдЗрдкреНрд╕ рдХреЛ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдХреИрдЯреЗрдЧрд░реАрдЬ (рдЬреИрд╕реЗ Sequence, Mapping, Boolean) рдореЗрдВ рдмрд╛рдВрдЯрд╛ рд╣реИред рдиреАрдЪреЗ рджрд┐рдП рдЧрдП рдЪрд╛рд░реНрдЯ (Diagram) рдореЗрдВ рдЖрдк Python рдХреЗ рдкреВрд░реЗ рдбреЗрдЯрд╛ рдЯрд╛рдЗрдк рдкрд░рд┐рд╡рд╛рд░ рдХрд╛ рдПрдХ рдХрдореНрдкрд▓реАрдЯ рдУрд╡рд░рд╡реНрдпреВ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ, рдЬрд┐рд╕рд╕реЗ рдЖрдкрдХреЛ рдпрд╛рдж рд░рдЦрдиреЗ рдореЗрдВ рдЖрд╕рд╛рдиреА рд╣реЛрдЧреА:
ЁЯТб рдКрдкрд░ рджрд┐рдП рдЧрдП рдЪрд╛рд░реНрдЯ рдХреЛ рдХреИрд╕реЗ рд╕рдордЭреЗрдВ? рдЬреИрд╕рд╛ рдХрд┐ рдЖрдкрдиреЗ рдЗрдореЗрдЬ рдореЗрдВ рджреЗрдЦрд╛, Python рдХреЗ рдЗрди рд╕рднреА рдбреЗрдЯрд╛ рдЯрд╛рдЗрдкреНрд╕ рдХреЛ рд╣рдо рдореБрдЦреНрдп рд░реВрдк рд╕реЗ рджреЛ рд╣рд┐рд╕реНрд╕реЛрдВ рдореЗрдВ рдкрдврд╝рддреЗ рд╣реИрдВтАФрд╕рд╛рдзрд╛рд░рдг рдбреЗрдЯрд╛ рдЯрд╛рдЗрдкреНрд╕ (рдЬреИрд╕реЗ Numbers рдФрд░ Booleans) рдЬреЛ рд╕рд┐рд░реНрдл рд╕рд┐рдВрдЧрд▓ рд╡реИрд▓реНрдпреВ рд╕реНрдЯреЛрд░ рдХрд░рддреЗ рд╣реИрдВ, рдФрд░ рдХрд▓реЗрдХреНрд╢рди рдбреЗрдЯрд╛ рдЯрд╛рдЗрдкреНрд╕ (рдЬреИрд╕реЗ String, Set, Dictionary) рдЬреЛ рдПрдХ рд╕рд╛рде рдмрд╣реБрдд рд╕рд╛рд░реЗ рдбреЗрдЯрд╛ рдХреЛ рдЕрдкрдиреЗ рдЕрдВрджрд░ рд╕рдореЗрдЯ рдХрд░ рд░рдЦ рд╕рдХрддреЗ рд╣реИрдВред
рдЪрд▓рд┐рдП рдЕрдм рдмрд┐рдирд╛ рджреЗрд░ рдХрд┐рдП рдЗрд╕ рдЪрд╛рд░реНрдЯ рдХреЗ рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ рдФрд░ рд╕рдмрд╕реЗ рдЬрд░реВрд░реА рд╣рд┐рд╕реНрд╕реЗтАФPython Numeric Data Type рдХреЛ рдЧрд╣рд░рд╛рдИ рд╕реЗ рдХреЛрдб рдХреЗ рд╕рд╛рде рд╕рдордЭрдирд╛ рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВ!