"पाइथन मूल बातें" (Python Fundamentals) अध्याय में हम पाइथन की आंतरिक संरचना को गहराई से समझते हैं। इसमें डेटा प्रकार, चर, ऑपरेटर, अभिव्यक्ति, निवेश (Input/Output) और टोकन जैसी अवधारणाएँ शामिल हैं। यह अध्याय पिछले अध्याय "पाइथन से शुरुआत" का विस्तार है और आगे के अध्यायों (डेटा हैंडलिंग, नियंत्रण प्रवाह, स्ट्रिंग्स, लिस्ट्स, टपल्स और डिक्शनरी) की नींव रखता है। इस अध्याय की ठोस समझ के बिना कोई भी प्रोग्राम सही नहीं लिखा जा सकता।
पाइथन प्रोग्राम की सबसे छोटी इकाई को टोकन कहते हैं। टोकन पाँच प्रकार के होते हैं:
if, else, for, while, def, import, return, True, False, None।age, total_marks, _name।25, 3.14, "नमस्ते", True, None।+, -, *, /, //, %, **, ==, >।(, ), [, ], {, }, ,, :, =, ;।चर एक नामित मेमोरी स्थान है जिसमें मान संग्रहीत होता है और जिसका मान प्रोग्राम के दौरान बदल सकता है।
count = 10
count = count + 5
print(count) # 15
वे मान जो प्रोग्राम के दौरान नहीं बदलते। पाइथन में विशेष नियतांक नहीं होते, परंपरा के अनुसार सभी बड़े अक्षरों में नाम लिखकर नियतांक बनाए जाते हैं।
PI = 3.14
GRAVITY = 9.8
Age और age भिन्न हैं।पाइथन में निम्नलिखित मुख्य डेटा प्रकार होते हैं:
5, -12, 1000।3.14, -0.5, 2.0।"पाइथन", 'A'।True और False।[1, 2, 3]।(1, 2, 3)।{"नाम": "राहुल"}।{1, 2, 3}।None मान का प्रकार।| ऑपरेटर | कार्य | उदाहरण |
|---|---|---|
| + | जोड़ | 10 + 3 = 13 |
| - | घटाव | 10 - 3 = 7 |
| * | गुणा | 10 * 3 = 30 |
| / | भाग (फ़्लोट) | 10 / 3 = 3.333 |
| // | पूर्णांक भाग | 10 // 3 = 3 |
| % | शेषफल | 10 % 3 = 1 |
| ** | घात | 2 ** 3 = 8 |
==, !=, >, <, >=, <=। इनका परिणाम हमेशा बूलियन (True/False) होता है।
and, or, not। जैसे (5 > 3) and (10 > 5) का मान True है।
=, +=, -=, *=, /=, %=, **=। जैसे x += 5 का अर्थ x = x + 5 है।
is, is not। वस्तुओं की समानता (समान मेमोरी स्थान) की जाँच करते हैं।
in, not in। यह जाँचते हैं कि मान किसी अनुक्रम (स्ट्रिंग, लिस्ट, टपल) में मौजूद है या नहीं।
print("a" in "python") # True
print(3 in [1, 2, 3]) # True
print(5 not in [1, 2, 3]) # True
अभिव्यक्ति में किस ऑपरेटर की गणना पहले होगी, यह प्राथमिकता (Precedence) निर्धारित करती है। उच्च प्राथमिकता वाला ऑपरेटर पहले क्रिया करता है।
प्राथमिकता का क्रम (उच्च से निम्न):
1. ** (घात)
2. *, /, //, %
3. +, -
4. तुलनात्मक (==, <, > आदि)
5. not
6. and
7. or
साहचर्यता (Associativity) यह बताती है कि समान प्राथमिकता वाले ऑपरेटर किस दिशा में जुड़ते हैं। अधिकांश ऑपरेटर बाएँ से दाएँ जुड़ते हैं, परंतु ** दाएँ से बाएँ जुड़ता है।
print(2 + 3 * 4) # 14 (गुणा पहले)
print((2 + 3) * 4) # 20 (कोष्ठक पहले)
print(2 ** 3 ** 2) # 512 (दाएँ से बाएँ: 3**2=9, 2**9=512)
name = input("नाम दर्ज करें: ")
age = int(input("आयु दर्ज करें: "))
marks = float(input("अंक दर्ज करें: "))
print("नाम:", name)
print(f"आयु: {age} अंक: {marks}")
print("कुल:", marks, sep=" | ")
अभिव्यक्ति (Expression): संकारकों और संकार्यों का संयोजन जो एक मान देता है। जैसे 5 + 3 * 2, x ** 2।
कथन (Statement): निर्देश जो कार्य करता है। जैसे x = 10, print("नमस्ते")। प्रत्येक कथन निष्पादित होता है, जबकि प्रत्येक अभिव्यक्ति का मूल्यांकन (Evaluation) होता है।
मूल्यांकन (Evaluation): अभिव्यक्ति का मान ज्ञात करने की प्रक्रिया। जैसे 3 * 4 का मूल्यांकन करने पर 12 प्राप्त होता है।
किसी भी अभिव्यक्ति का मूल्यांकन करते समय निम्न क्रम अपनाया जाता है: 1. सर्वप्रथम कोष्ठकों (Parentheses) के अंदर की अभिव्यक्ति का मूल्यांकन होता है। 2. फिर घात (*) संकारक क्रिया करता है, जो दाएँ से बाएँ जुड़ता है। 3. उसके बाद गुणा, भाग, पूर्णांक भाग और शेषफल (, /, //, %) का मूल्यांकन बाएँ से दाएँ होता है। 4. अंत में जोड़ और घटाव (+, -) की गणना होती है।
x = 2 + 3 * 4 ** 2 - 10 / 2
# चरण 1: 4 ** 2 = 16
# चरण 2: 3 * 16 = 48, 10 / 2 = 5.0
# चरण 3: 2 + 48 - 5.0 = 45.0
print(x) # 45.0
इस उदाहरण से स्पष्ट है कि प्राथमिकता के क्रम को ध्यान में रखे बिना लिखा गया कोड गलत परिणाम दे सकता है। स्पष्टता के लिए अनिश्चित स्थितियों में कोष्ठकों का उपयोग करना सर्वोत्तम है, क्योंकि कोष्ठक की प्राथमिकता सर्वोच्च होती है और वे अभिव्यक्ति को अधिक पठनीय बनाते हैं।
a = 5
b = 10
a, b = b, a
print("a =", a, "b =", b)
r = float(input("त्रिज्या दर्ज करें: "))
area = 3.14 * r ** 2
print("वृत्त का क्षेत्रफल:", area)
p = float(input("मूलधन: "))
t = float(input("समय: "))
r = float(input("दर: "))
si = (p * t * r) / 100
print("साधारण ब्याज:", si)
| प्रकार | परिवर्तनीयता | उदाहरण |
|---|---|---|
| int | Immutable | 42 |
| float | Immutable | 3.14 |
| str | Immutable | "कक्षा" |
| bool | Immutable | True |
| list | Mutable | [1, 2, 3] |
| tuple | Immutable | (1, 2, 3) |
| dict | Mutable | {"a": 1} |
| set | Mutable | {1, 2} |
| प्राथमिकता | ऑपरेटर |
|---|---|
| 1 | ** |
| 2 | *, /, //, % |
| 3 | +, - |
| 4 | ==, !=, <, >, <=, >= |
| 5 | not |
| 6 | and |
| 7 | or |
| मान्य नाम | अमान्य नाम | कारण (अमान्य) |
|---|---|---|
| age | 1age | अंक से शुरू |
| _name | class | कीवर्ड |
| total_marks | total marks | स्थान |
| rollNo | roll-no | विशेष प्रतीक |
** और * का भ्रम; 2 ** 3 घात है (8) जबकि 2 * 3 गुणा है (6)।/ और // का भ्रम; / हमेशा फ़्लोट देता है जबकि // पूर्णांक देता है।2 + 3 * 4 को 20 मान लेना; सही उत्तर 14 है।+ से जोड़ना, जैसे "उम्र: " + age; इसके लिए f-string या str() का उपयोग करें।//, %, ** के उदाहरण लिखते समय सटीक परिणाम दें।पाइथन मूल बातें अध्याय पाइथन प्रोग्रामिंग की रीढ़ है। टोकन से लेकर डेटा प्रकारों, ऑपरेटरों और अभिव्यक्ति मूल्यांकन तक, यह सब कुछ आगे के सभी अध्यायों में उपयोग होता है। mutable और immutable की समझ, ऑपरेटर प्राथमिकता, तथा निवेश-निर्गम की विधियाँ विद्यार्थी को सही और कुशल प्रोग्राम लिखने में सक्षम बनाती हैं। इस अध्याय का अभ्यास करने के बाद विद्यार्थी चर, डेटा प्रकार और अभिव्यक्तियों पर आधारित प्रश्नों को आत्मविश्वास से हल कर सकता है, जो डेटा हैंडलिंग और नियंत्रण प्रवाह जैसे अगले अध्यायों का मार्ग प्रशस्त करता है।