डेटा विज्ञान के क्षेत्र में शुरुआती जो प्रोग्रामिंग से परिचित नहीं हैं, उन्हें अक्सर यह पता लगाना मुश्किल होता है कि उन्हें कहां से शुरू करना चाहिए।
पायथन फंडामेंटल्स क्या है?
पायथन के मूल सिद्धांतों में पायथन प्रोग्रामिंग भाषा के बुनियादी निर्माण खंडों की चर्चा शामिल है। यहाँ, “फंडामेंटल्स ऑफ़ पायथन” को निम्नलिखित श्रेणियों में विभाजित किया गया है। और हम प्रत्येक विषय पर अलग से चर्चा करेंगे। सबसे पहले और सबसे महत्वपूर्ण, हम पायथन में स्टेटमेंट्स के बारे में चर्चा करेंगे।
Statements
पायथन स्टेटमेंट और कुछ नहीं बल्कि तार्किक निर्देश( logical instructions) हैं जिन्हें दुभाषिया पढ़ और निष्पादित कर सकता है। यह सिंगल और मल्टीलाइन दोनों हो सकता है।
पायथन में कथनों की दो श्रेणियां हैं|(categories of statements)
- Expression Statements
- Assignment Statements
Expression Statement:
एक्सप्रेशन की सहायता से हम जोड़ ,घटाव, एकाग्रता आदि संक्रियाएँ करते हैं। दूसरे शब्दों में, यह एक स्टेटमेंट है जो एक मान लौटाता है।
यह एक एक्सप्रेशनहै यदि ऐसा प्रतीत होता है:-
On the right side of an assignment,
As a parameter to a method call.
नोट: एक एक्सप्रेशन में एक वापसी होनी चाहिए।
Example:
Using simple arithmetic expression:
(1+4) * 3 15
Using a function in an expression:
pow (3,2) 9
Assignment Statements:
असाइनमेंट स्टेटमेंट की मदद से हम नए वेरिएबल बनाते हैं, वैल्यू असाइन करते हैं और वैल्यू भी बदलते हैं।
assignment statement syntax:
#LHS <=> RHS variable = expression
हम स्टेटमेंट के दाईं ओर क्या है, इसके आधार पर हम असाइनमेंट स्टेटमेंट को तीन प्राथमिक श्रेणियों में वर्गीकृत कर सकते हैं।
- Value-Based Expression on RHS
- Current Variable on RHS
- Operation on RHS
Value-Based Expression on the RHS:
इस मामले में, पायथन नए असाइन किए गए वेरिएबल के लिए एक नया मेमोरी स्थान आवंटित करता है।
आइए इस श्रेणी का एक उदाहरण लेते हैं।
- First, let’s create a string and assign it to a variable “test”,
- Then, we will check the memory location id python has assigned for the variable
test= "Hello World" id(test)
नोट: नीचे दिखाए गए उदाहरण को देखें:-
test1="Hello" id(test1)
Output:-
2524751071304
test2="Hello" id(test2)
Output:-
2524751071304
जैसा कि आपने देखा होगा कि हमने एक ही स्ट्रिंग को दो अलग-अलग वेरिएबल्स को सौंपा है। लेकिन पाइथन ने दोनों वेरिएबल्स के लिए समान स्मृति स्थान आवंटित किया। वह है क्योंकि पायथन नीचे बताए गए दो मामलों के लिए समान मेमोरी लोकेशन आवंटित करता है:-
- If the strings with less than 20 characters that don’t have white spaces and
- Integers ranging between (-5 to +255)
मेमोरी को बचाने के लिए पायथन द्वारा उपयोग की जाने वाली इस अवधारणा को इंटर्निंग भी कहा जाता है।
Current Python variable on RHS:
इस मामले में, पायथन एक नया मेमोरी स्थान आवंटित नहीं करता है।
आइए इसे एक उदाहरण की मदद से समझते हैं:-
current_var= "It's HumbleGumble" print(id(current_var))
Output:-
24751106240
new_var= current_var print(id(new_var))
Output:-
2524751106240
जैसा कि आप देख सकते हैं कि हमारे पास दो चरों के लिए एक ही स्थान आईडी आवंटित है।
Operation on RHS:
इस श्रेणी में, हमारे पास स्टेटमेंट के दाईं ओर एक ऑपरेशन है, जो हमारे स्टेटमेंट के प्रकार को परिभाषित करने वाला कारक है।
आइए इसे एक उदाहरण की मदद से समझते हैं:-
test= 7 * 2 type(test)
Output:-
int
test1= 7 * 2 / 10 type(test1)
Output:-
float
Multiline statements
मल्टीलाइन स्टेटमेंट को परिभाषित करने के दो तरीके हैं।
- Implicit Method
- Explicit Method
पायथन में एक स्टेटमेंट के अंत को एक न्यूलाइन कैरेक्टर के रूप में माना जाता है, स्टेटमेंट्स को कई लाइनों में विस्तारित करने के लिए हम दो तरीकों का उपयोग कर सकते हैं।
- Implicit: By using parenthesis like (), {} or [].
Example:
a = (0 + 1 + 2 + 3 + 4 + 5)
- Explicit: By using continuation character “\”.
a = 0 + 1 + 2 + \ 3 + 4 + 5
Indentation
अधिकांश प्रोग्रामिंग भाषाओं के विपरीत, पायथन कोड के एक ब्लॉक को चिह्नित करने के लिए इंडेंटेशन का उपयोग करता है। पायथन शैली दिशानिर्देश या पीईपी 8 के अनुसार, आपको वेरिएबल का इंडेंट आकार रखना चाहिए।
अधिकांश प्रोग्रामिंग भाषाएं बेहतर कोड स्वरूपण के लिए इंडेंटेशन प्रदान करती हैं और इसे लागू करने के लिए लागू नहीं करती हैं। लेकिन पायथन में यह अनिवार्य है। यही कारण है कि पायथन में इंडेंटेशन इतना महत्वपूर्ण है।
Comments
नोट कोड में टैग की गई पंक्तियों के अलावा और कुछ नहीं हैं जो कोड की पठनीयता को बढ़ाती हैं और कोड को स्व-व्याख्यात्मक बनाती हैं। टिप्पणियाँ दो श्रेणियों की हो सकती हैं:-
Single-line comments:
एक ‘#’ की मदद से हम सिंगल लाइन कमेंट शुरू करते हैं|
Example:
test= 7 * 2
type(test)
#Single-line comment
Multi-line comments:
”…”’ की मदद से हम पाइथॉन में मल्टीलाइन कमेंट लिखते हैं।
Example:
test1= 7 * 2 / 10
type(test1)
'''
line one
line two
line three
'''
Docstring comments:
Translation results
पायथन में प्रलेखन तार (या डॉकस्ट्रिंग) सुविधा है। यह प्रोग्रामर को प्रत्येक पायथन मॉड्यूल, फ़ंक्शन, क्लास और विधि के साथ त्वरित नोट्स जोड़ने का एक आसान तरीका देता है। ट्रिपल-कोटेशन मार्क का उपयोग करके परिभाषित स्ट्रिंग्स मल्टीलाइन कमेंट हैं। हालांकि, अगर इस तरह की स्ट्रिंग को किसी फ़ंक्शन या क्लास परिभाषा के तुरंत बाद या मॉड्यूल के शीर्ष पर रखा जाता है, तो वे डॉकस्ट्रिंग में बदल जाते हैं।
Example:
def SayFunction():
'''
Strings written using '''_''' after a function represents docstring of func
Python docstrings are not comments
'''
print("just a docstring")
print("Let us see how to print the docstring value")
print(theFunction.__doc__)
Variables
एक वेरिएबल एक मेमोरी एड्रेस है जो बदल सकता है और जब मेमोरी एड्रेस नहीं बदल सकता है तो इसे स्थिर के रूप में जाना जाता है। वैरिएबल मेमोरी लोकेशन का एक नाम है जहां डेटा स्टोर किया जाता है। एक बार एक वेरिएबल स्टोर हो जाने के बाद मेमोरी में स्पेस आवंटित हो जाता है। यह संख्याओं, अक्षरों और अंडरस्कोर वर्ण के संयोजन का उपयोग करके एक चर को परिभाषित करता है।
Assigning Values to Variables
स्मृति आरक्षित करने के लिए स्पष्ट घोषणा की कोई आवश्यकता नहीं है। असाइनमेंट बराबर (=) ऑपरेटर का उपयोग करके किया जाता है। कानूनी अजगर चर के कुछ उदाहरण हैं –
i = 1
j = 2
Multiple Variable Assignment:
आप निम्न प्रकार से एकाधिक वेरिएबल्स के लिए एक मान निर्दिष्ट कर सकते हैं –
a=2
इसके अलावा, हम कई वेरिएबल्स को कई मान इस प्रकार निर्दिष्ट कर सकते हैं –
a, b, c = 2, 25, ‘abc’
नोट: पायथन एक प्रकार की अनुमानित भाषा है यानी यह स्वचालित रूप से निर्दिष्ट वेरिएबल के प्रकार का पता लगाता है।
उदाहरण के लिए|
test=1 type(test)
Output:-
int
test1="String" type(test1)
Output:-
str
Constants
कॉन्स्टेंट एक प्रकार का वेरिएबल है जिसमें मान होते हैं, जिनके मान को बदला नहीं जा सकता है। वास्तव में हम शायद ही कभी पायथन में स्थिरांक का उपयोग करते हैं।
पायथन में एक स्थिरांक को मान निर्दिष्ट करना:-
स्थिरांक आमतौर पर एक अलग मॉड्यूल/फ़ाइल पर घोषित और असाइन किए जाते हैं।
#Declare constants in a separate file called constant.py
PI = 3.14
GRAVITY = 9.8
- Then import it to the main file.
#inside main.py we import the constants
import constant
print(constant.PI)
print(constant.GRAVITY)
Token
टोकन कार्यक्रम की सबसे छोटी इकाई हैं। पायथन में निम्नलिखित टोकन हैं:-
- Reserved words or Keywords
- Identifiers
- Literals
- Operators
Keywords:
कीवर्ड कुछ और नहीं बल्कि विशेष शब्दों का एक सेट है, जो अजगर द्वारा आरक्षित होते हैं और जिनके विशिष्ट अर्थ होते हैं। याद रखें कि हमें पायथन में चर के रूप में कीवर्ड का उपयोग करने की अनुमति नहीं है। पायथन में कीवर्ड केस सेंसिटिव होते हैं। हमने यहां संभावित पायथन कीवर्ड का एक स्नैपशॉट लिया है।
यहां पायथन कीवर्ड की एक सूची दी गई है। अधिक सहायता प्राप्त करने के लिए कोई भी कीवर्ड दर्ज करें।
False | def | if | raise |
None | del | import | return |
True | elif | in | try |
and | else | is | while |
as | except | lambda | with |
assert | finally | nonlocal | yield |
break | for | not | continue |
class | from | or | global |
Identifiers:
पायथन में पहचानकर्ता कुछ भी नहीं बल्कि उपयोगकर्ता-परिभाषित नाम हैं जो प्रोग्राम योग्य इकाई जैसे चर, कार्य, वर्ग, मॉड्यूल या किसी अन्य ऑब्जेक्ट का प्रतिनिधित्व करते हैं।
लेकिन कुछ नियम हैं जिनका हमें एक पहचानकर्ता को परिभाषित करते समय पालन करने की आवश्यकता है।
- आप अक्षरों के अनुक्रम का उपयोग कर सकते हैं (लोअरकेस (a to z) या अपरकेस (A to Z)। पहचानकर्ता को परिभाषित करते समय आप अंकों (0 से 9) या अंडरस्कोर (_) को भी मिला सकते हैं।
- पहचानकर्ता नाम शुरू करने के लिए आप अंकों का उपयोग नहीं कर सकते।
- अंडरस्कोर (_) के अलावा आपको किसी अन्य विशेष वर्ण का उपयोग करने की अनुमति नहीं है।
- भले ही पायथन डॉक्टर कहता है कि आप असीमित लंबाई वाले पहचानकर्ता का नाम दे सकते हैं। लेकिन यह पूरी तरह सच नहीं है|
बड़े नाम (79 से अधिक वर्णों) का उपयोग करने से PEP-8 मानक द्वारा निर्धारित नियम का उल्लंघन होगा। इसे कहते हैं।
Literals:
पाइथन में अन्य अंतर्निर्मित वस्तुएँ लिटरल्स हैं। लिटरल को डेटा के रूप में परिभाषित किया जा सकता है जो एक वेरिएबल या स्थिरांक में दिया जाता है। पायथन में निम्नलिखित शाब्दिक हैं:-
String Literals:
एक स्ट्रिंग शाब्दिक उद्धरणों से घिरे वर्णों का एक क्रम है। हम एक स्ट्रिंग के लिए सिंगल, डबल या ट्रिपल कोट्स दोनों का उपयोग कर सकते हैं। और, एक अक्षर शाब्दिक एकल या दोहरे उद्धरणों से घिरा एक एकल वर्ण है।
Numeric Literals:
संख्यात्मक शाब्दिक अपरिवर्तनीय (अपरिवर्तनीय) हैं। संख्यात्मक शाब्दिक 3 अलग-अलग संख्यात्मक प्रकार इंटीजर, फ्लोट और कॉम्प्लेक्स से संबंधित हो सकते हैं।
Boolean Literals:
एक बूलियन शाब्दिक में दो में से कोई भी मान हो सकता है: सही या गलत।
Collection literals:
चार अलग-अलग शाब्दिक संग्रह हैं सूची अक्षर, टुपल अक्षर, डिक्ट अक्षर, और सेट अक्षर।
Special literals:
पायथन में एक विशेष शाब्दिक अर्थात कोई नहीं है। हम इसका उपयोग उस क्षेत्र को निर्दिष्ट करने के लिए करते हैं जो नहीं बनाया गया है।
Operators:
ऑपरेटर्स वे प्रतीक हैं जो कुछ मानों पर संक्रिया करते हैं। इन मूल्यों को ऑपरेंड के रूप में जाना जाता है।
पायथन में, ऑपरेटरों को निम्नलिखित श्रेणियों में वर्गीकृत किया गया है:-
- Arithmetic Operators
- Relational Operators
- Assignment Operators
- Logical Operators
- Membership Operators
- Identity Operators
- Bitwise Operators
Arithmetic Operators
Arithmetic Operators | Operator Name | Description | Example |
+ | Addition | Perform Addition | I=40, J=20 >>>I+ J >>>60 |
– | Subtraction | Perform Subtraction | I=40, J=20 >>>I – J >>>20 |
* | Multiplication | Perform Multiplication | I=40, J=20 >>>I * J >>> 800 |
/ | Division | Perform Division | I=30, J=20 >>>I /J >>> 2.5 |
% | Modulus | Return the remainder after Division | I=40, J=20 >>>I /J >>> 0 |
** | Exponent | Performs exponential (power) calculation | I=4, J=20 >>>I /J >>> 204 |
// | Floor Division | Perform division remove the decimal value and return Quotient value | I=30, J=20 >>>I//J >>> 1 |
Relational Operators
इसे तुलना ऑपरेटर के रूप में भी जाना जाता है क्योंकि यह मूल्यों की तुलना करता है। तुलना के बाद, यह बूलियन मान लौटाता है, या तो सही या गलत।
Operator | Operator Name | Description | Example |
== | Equal to | यदि दो ऑपरेंड के मान समान हैं, तो यह सही है। | I = 20, J = 20 (I == J) is True |
!= | Not Equal to | यदि दो ऑपरेंड के मान समान नहीं हैं, तो यह सही हो जाता है। | I = 20, J = 20 (I == J) is False |
< | Less than | यदि लेफ्ट ऑपरेंड का मान राइट ऑपरेंड के मान से कम है, तो यह सच हो जाता है| | I = 40, J = 20 (I < J) is False |
> | Greater than | यदि लेफ्ट ऑपरेंड का मान राइट ऑपरेंड के मान से अधिक है, तो यह सच हो जाता है | I= 40, J = 20 (I > J) is True |
<= | Less than or equal to | यदि लेफ्ट ऑपरेंड का मान राइट ऑपरेंड के मान से कम या उसके बराबर है, तो यह सच हो जाता है | I = 40, J = 20 (I <= J) is False |
>= | Greater than or equal to | यदि लेफ्ट ऑपरेंड का मान राइट ऑपरेंड के मान से अधिक या उसके बराबर है, तो यह सही है। | I = 40, J = 20 (I >= J) is True |
<> | Not equal to (similar to !=) | यदि दो ऑपरेंड के मान समान नहीं हैं, तो शर्त सत्य हो जाती है| | I=40, J = 20 (I <> J) is True. |
Assignment Operators
Operator | Operator Name | Description | Example |
= | Assignment | यह राइट साइड ऑपरेंड से लेफ्ट साइड ऑपरेंड को मान प्रदान करता है | I = 40 It assigns 40 to I |
+= | Add then assign | यह जोड़ करता है और फिर परिणाम बाएं हाथ के ऑपरेंड को सौंपा जाता है | I+=J that means I = I + J |
-= | Subtract then assign | यह घटाव करता है और फिर परिणाम बाएं हाथ के संकार्य को सौंपा जाता है | I-=J that means I = I – J |
*= | Multiply the assign | यह गुणा करता है और फिर परिणाम बाएं हाथ के ऑपरेंड को सौंपा जाता है। | I*=J that means I = I * J |
/= | Divide then assign | यह विभाजन करता है और फिर परिणाम बाएं हाथ के संचालन को सौंपा जाता है | I/=J that means I = I / J |
%= | Modulus then assign | यह मापांक करता है और फिर परिणाम बाएं हाथ के संकार्य को सौंपा जाता है | I%=J that means I = I % J |
**= | Exponent then assign | यह एक्सपोनेंट करता है और फिर परिणाम बाएं हाथ के ऑपरेंड को सौंपा जाता है | I**=J that means I = I ** J |
//= | Floor division then assign | यह फ्लोर डिवीजन करता है और फिर परिणाम बाएं हाथ के ऑपरेंड को सौंपा जाता है | I//=J that means I = I // J |
Logical Operators
Operator | Operator Name | Description | Example |
and | Logical AND | जब दोनों पक्ष की स्थिति सत्य होती है तो परिणाम सत्य होता है अन्यथा गलत होता है | 2<1 and 2<3 False |
or | Logical OR | जब कम से कम एक शर्त सत्य होती है तो परिणाम सत्य होता है अन्यथा असत्य | 2<1 or 2<3 True |
not | Logical NOT | स्थिति को उलट दें | Not (5>4) False |
Membership Operators
Operator | Description | Example |
in | यदि यह अनुक्रम में एक चर पाता है तो यह सच हो जाता है अन्यथा झूठा लौटाता है | List = [1,2,3,4,5,6,7,8] i=1 if i in List: print(‘i is available in list’) else: print(‘i is not available in list’) Output – i is available in list |
not in | यदि अनुक्रम में कोई चर नहीं मिलता है तो यह सत्य लौटाता है अन्यथा झूठा लौटाता है | List = [1,2,3,4,5,6,7,8] j=10 if j not in List: print (‘j is not available in list’) else: print (‘j is available in list’) Output – j is not available in list |
Bitwise Operators
यह थोड़ा-थोड़ा करके ऑपरेशन करता है। मान लीजिए कि दो वेरिएबल हैं,
I = 10 and
J = 20
और उनके द्विआधारी मूल्य हैं:-
I = 10 = 0000 1010
J = 20 = 0001 0100
अब देखते हैं कि बिटवाइज़ ऑपरेटर कैसा प्रदर्शन करते हैं।
Operator | Operator Name | Description | Example |
& | Binary AND | यदि दोनों बिट 1 हैं तो 1 अन्यथा 0 | I & J 0000 0000 |
| | Binary OR | यदि बिट में से एक 1 है तो 1 अन्यथा 0 | I | J 0001 1110 |
^ | Binary XOR | यदि दोनों बिट समान हैं, तो 0 अन्यथा 1 | I ^ J 0001 1110 |
~ | Binary Complement | यदि बिट 1 है तो इसे 0 बनाएं और यदि बिट 0 है तो 1 बनाएं | ~I 1111 0101 |
<< | Binary Left Shift | बाएं ऑपरेंड को दाएं ऑपरेंड द्वारा निर्दिष्ट बिट्स की संख्या से बाईं ओर ले जाया जाता है। | I << 2 240 i.e. 1111 0000 |
>> | Binary Right Shift | बाएं ऑपरेंड को दाएं ऑपरेंड द्वारा निर्दिष्ट बिट्स की संख्या से दाएं स्थानांतरित किया जाता है। | I >> 2 15 i.e. 1111 |
Identity Operators
इन ऑपरेटरों का उपयोग दो वस्तुओं के मेमोरी एड्रेस की तुलना करने के लिए किया जाता है।
Operator | Description | Example |
is | यदि दोनों ऑपरेंड की पहचान समान है तो यह सही है अन्यथा गलत है | I = 20 J = 20 if(I is J): print (‘I and J have same identity’) else: print (‘I and J have not same identity’) Output – I and J have same identity |
is not | यदि दोनों ऑपरेंड की पहचान समान नहीं है तो यह सही है अन्यथा गलत है | I = 20 J = 230 if(I is not J): print (‘I and J have not same identity’) else: print (‘I and J have same identity’) Output – I and J have not same identity |
conclusion:-
इस पोस्ट में बस इतना ही में उम्मीद करता हूँ की आपको इस पोस्ट से बहुत हेल्प मिली होगी इसी तरह पढ़ते रहिये और कोई भी प्रश्न हो तो आप हमे बताये हम उसका क्लियर करेंगे| लर्न पायथन ऑनलाइन में अगला मॉड्यूल, पायथन डेटाटाइप पर प्रकाश डालता है। वहाँ मिलते हैं!
धन्यवाद |