Assignment Statements – Example 2

Assignment Statements – Example 2 – पिछले Example में हमने जितने भी तरह के Assignments देखे, वे सभी Python Assignments के Basic Forms हैं। इसलिए इन सभी को हम कई और Different तरीकों से भी Use कर सकते हैं और Different Types के Objects को Different तरीकों से Assign कर सकते हैं। जैसे-

[code]
FileName: DifferentUsesOfBasicAssignmentStatements.py
# Assign Tuple Data Items to List Data Items
[firstName, lastName] = ('KRISHNA', 'YADAV')
print("First Name and Last Name:", firstName, lastName)

# Assign String Characters to List Data Items
[char1, char2, char3, char4, char5] = 'YADAV'
print("Last Name Characters:", char1, char2, char3, char4, char5)

# Assign Sliced Objects to List Data Items
fullName = 'KRISHNA MURARI'
[firstName, lastName] = fullName[:7], fullName[8:]
print("FirstName and LastName after Slicing:", firstName, lastName )

# Assign Auto-Generated Successive Numbers
zero, one, two = range(3)
print("Values assigned from Auto-Generated Numbers:", zero, one, two)

# Sequence Unpacking Assignment from List Data Items
lstNames = ['KRISHNA', 'MURARI', 'MANMOHAN', 'SHYAM']
name1, name2, name3, name4 = lstNames
print("All Names:", name1, name2, name3, name4)

# Extended Unpacking Assignment from List Data Items
nameFirst, *nameRest = lstNames
print("All Names:", nameFirst, nameRest)
nameFirst, *namesMiddle, nameLast = lstNames
print("All Names:", nameFirst, namesMiddle, nameLast)

Output
First Name and Last Name: KRISHNA YADAV
Last Name Characters: Y A D A V
FirstName and LastName after Slicing: KRISHNA MURARI
Values assigned from Auto-Generated Numbers: 0 1 2
All Names: KRISHNA MURARI MANMOHAN SHYAM
All Names: KRISHNA ['MURARI', 'MANMOHAN', 'SHYAM']
All Names: KRISHNA ['MURARI', 'MANMOHAN'] SHYAM
[/code]

इस Example में सबसे पहले हमने निम्‍न Statement Specify करते हुए एक Tuple Object के विभिन्‍न Data Items को List Object के विभिन्‍न Data Items से Initialize किया है-

[firstName, lastName] = (‘KRISHNA’, ‘YADAV’)

परिणामस्‍वरूप List के firstName Data Item में नाम ‘KRISHNA‘ Store हो जाता है और lastName Data Item में नाम ‘YADAV‘ Store हो जाता है। जब हम इस तरह का Assignment Statement Use करते हैं, तब इस बात का ध्‍यान रखना जरूरी होता है कि Equal To Operator के दोनों ओर जिन Objects को Specify किया जा रहा है, उनमें Exist Data Items की संख्‍या एक समान हो।

इसी Statement की तरह ही निम्‍नानुसार अगले Statement में एक String Sequence के सभी Characters को एक List Object के विभिन्‍न Data Items में Store कर दिया है-

[char1, char2, char3, char4, char5] = ‘YADAV’

यहां भी हमें इस बात का ध्‍यान रखना जरूरी है कि Equal To Operator के Right Side में Specified String Sequence के कुल Characters की संख्‍या और List में Specified कुल Data Items की संख्‍या एक समान हो, अन्‍यथा Python Interpreter, Assignment के दौरान Error Return करता है।

Python हमें ये सुविधा देता है कि हम किसी भी तरह के Core Object Type को Assignment Statements का प्रयोग करते हुए Assign कर सकते हैं और किसी Sequence Type के साथ जितने भी तरह के Operations को Perform किया जा सकता है, उन सभी तरह के Operations से Return होने वाले Outputs को Left Side में Specified Objects में Assign किया जा सकता है। इसीलिए जब निम्‍न Statement Execute होता है-

fullName = ‘KRISHNA MURARI’
[firstName, lastName] = fullName[:7], fullName[8:]

तब Slicing Operations से Return होने वाले String Objects भी Left Side में Specified List के firstNamelastName Data Items में Store हो जाते हैं।

कभी-कभी हमें एक निश्चित Sequence में Generate होने वाले Numbers को Multiple Variables में Store करके उन्‍हें किसी Specific तरीके से Use करना होता है। इस तरह की जरूरत को पूरा करने के लिए Python हमें range() नाम का Built-In Function Provide करता है, जिसे निम्‍नानुसार Use किया जा सकता है-

zero, one, two = range(3)

हम इस तरह से range() Function द्वारा Return होने वाले Numbers को भी One by One विभिन्‍न Variables में क्रम से Assign कर सकते हैं।

Python हमें किसी List के विभिन्‍न Data Items को Individual Variables में Assign करने की सुविधा भी देता है, जिसकी वजह से जब हम निम्‍नानुसार तरीके से List Define करके उसे Variables के साथ Specify करते हैं-

lstNames = [‘KRISHNA’, ‘MURARI’, ‘MANMOHAN’, ‘SHYAM’]
name1, name2, name3, name4 = lstNames

तो List के सभी Data Items क्रम से विभिन्‍न Variables में One by One Assign हो जाते हैं।

कई बार स्थिति ऐसी होती है, जब हमें List के कुछ Items को तो किन्‍हीं Variables में लेना होता है, जबकि बाकी के बचे हुए सभी Data Items को एक Single List Object की तरह Retrieve कर लेना होता है। इस तरह की जरूरत को पूरा करने के लिए हमें उस Variable के साथ निम्‍नानुसार * का प्रयोग करना पड़ता है-

nameFirst, *nameRest = lstNames

जिसमें हम बाकी के बचे हुए सभी Data Items को एक Sub-Separated List की तरह Return करना चाहते हैं। जब ये Statement Execute होता है, तब हमें निम्‍नानुसार Output प्राप्‍त होता है-

All Names: KRISHNA [‘MURARI’, ‘MANMOHAN’, ‘SHYAM’]

जहां List lstNames में Specified पहला Data Item नाम तो nameFirst Variable में Assign हो जाता है, जबकि बाकी के बचे हुए सभी Data Items एक नई Sub-List के रूप में Assign हो जाते हैं।

कभी-कभी ऐसी स्थिति भी होती है, जब हमें एक ही List के बीच के कुछ Data  Items को Sub-List की तरह Return करना होता है, जबकि List की शुरूआत व अन्‍त के Data Items को Separated Items की तरह Variables में Assign करना होता है। इस तरह की जरूरत को पूरा करने के लिए हमें * को बीच वाले Variable के साथ निम्‍नानुसार तरीके से Specify करना होता है-

nameFirst, *namesMiddle, nameLast = lstNames

परिणामस्‍वरूप जब इस Statement को Execute किया जाता है, तो lstNames List में Exist पहला Data Item, Variable nameFirst में जबकि अन्तिम Data Item, Variable nameLast में Store हो जाता है, जबकि बाकी के बचे हुए सभी बीच वाले Data Items *namesMiddle Variable में Store हो जाते हैं, परिणामस्‍वरूप हमें निम्‍नानुसार Output प्राप्‍त होता है-

All Names: KRISHNA [‘MURARI’, ‘MANMOHAN’] SHYAM

हालांकि हम * का प्रयोग करते हुए List, Tuple, Dictionary जैसे Core Types के Data Items को विभिन्‍न तरीकों से Retrieve करके जरूरत के अनुसार विभिन्‍न Variables में Assign कर सकते हैं, लेकिन इसी काम को हम Sequences के Slicing व Indexing Operations द्वारा भी Perform कर सकते हैं। इसलिए ये तरीका केवल हमारे Convenience के लिए ही है। इसी तरीके को Use करते हुए अपनी सभी जरूरतों को पूरा करना जरूरी नहीं है। हम Slicing व Indexing तरीके को भी समान रूप से Use कर सकते हैं।

इतना ही नहीं, इस Chapter के पहले Example में हमने जितने भी Basic Assignment Statements को देखा है, उन सभी तरह के Assignment Statements का प्रयोग हम किसी भी Core Type के साथ Apply कर सकते हैं जिनमें से कुछ तरीकों को हमने यहां पर पर्याप्‍त विस्‍तार से Discuss किया है।

Python in Hindi - BccFalna.comये Article इस वेबसाईट पर Selling हेतु उपलब्‍ध EBook Python in Hindi से लिया गया है। इसलिए यदि ये Article आपके लिए उपयोगी है, तो निश्चित रूप से ये EBook भी आपके लिए काफी उपयोगी साबित होगी।

Python in Hindi | Page: 602 | Format: PDF

BUY NOW GET DEMO REVIEWS