पायथन में, = ऑपरेटर का उपयोग चरों को मान निर्दिष्ट करने के लिए किया जाता है।
a = 100
b = 200
print(a)
# 100
print(b)
# 200
जैसा कि ऊपर दिए गए उदाहरण में, आप एक समय में एक के बजाय एक साथ कई चरों को मान निर्दिष्ट कर सकते हैं, जो सुविधाजनक है क्योंकि इसे लिखने के लिए केवल एक सरल कोड लाइन की आवश्यकता होती है।
निम्नलिखित दो मामलों का वर्णन किया गया है।
- एकाधिक चर के लिए एकाधिक मान असाइन करें
- एकाधिक चर के लिए समान मान असाइन करें
एकाधिक चर के लिए एकाधिक मान असाइन करें
अल्पविराम के साथ चर और मूल्यों को अलग करके एक साथ कई मूल्यों को एक साथ सौंपा जा सकता है।
a, b = 100, 200
print(a)
# 100
print(b)
# 200
तीन या अधिक चर, प्रत्येक भिन्न प्रकार के, स्वीकार्य हैं।
a, b, c = 0.1, 100, 'string'
print(a)
# 0.1
print(b)
# 100
print(c)
# string
यदि बाईं ओर एक चर है, तो इसे टपल के रूप में निर्दिष्ट किया जाता है।
a = 100, 200
print(a)
print(type(a))
# (100, 200)
# <class 'tuple'>
यदि बाईं ओर चर की संख्या दाईं ओर के मानों की संख्या से मेल नहीं खाती है, तो एक ValueError त्रुटि होगी, लेकिन शेष को चर में तारांकन जोड़कर एक सूची के रूप में असाइन किया जा सकता है।
# a, b = 100, 200, 300
# ValueError: too many values to unpack (expected 2)
# a, b, c = 100, 200
# ValueError: not enough values to unpack (expected 3, got 2)
a, *b = 100, 200, 300
print(a)
print(type(a))
# 100
# <class 'int'>
print(b)
print(type(b))
# [200, 300]
# <class 'list'>
*a, b = 100, 200, 300
print(a)
print(type(a))
# [100, 200]
# <class 'list'>
print(b)
print(type(b))
# 300
# <class 'int'>
तारक के बारे में अधिक जानकारी के लिए और एक टपल या सूची के तत्वों को एकाधिक चरों में कैसे असाइन करें, निम्न आलेख देखें।
एकाधिक चर के लिए समान मान असाइन करें
एक ही मान को = क्रमागत रूप से प्रयोग करके अनेक चरों को नियत किया जा सकता है। यह एक ही मान पर एकाधिक चर प्रारंभ करने के लिए उपयोगी है।
a = b = 100
print(a)
# 100
print(b)
# 100
3 से अधिक टुकड़े स्वीकार्य हैं।
a = b = c = 'string'
print(a)
# string
print(b)
# string
print(c)
# string
समान मान निर्दिष्ट करने के बाद, उनमें से किसी एक को दूसरा मान असाइन किया जा सकता है।
a = 200
print(a)
# 200
print(b)
# 100
अपरिवर्तनीय (अपरिवर्तनीय) ऑब्जेक्ट्स जैसे पूर्णांक, फ़्लोटिंग पॉइंट नंबर और स्ट्रिंग्स के बजाय, सूचियां और शब्दकोश प्रकार जैसे परिवर्तनीय ऑब्जेक्ट्स असाइन करते समय सावधान रहें।
लगातार = का उपयोग करने का अर्थ है कि सभी चर एक ही वस्तु की ओर इशारा करते हैं, इसलिए यदि आप एक तत्व का मान बदलते हैं या एक नया तत्व जोड़ते हैं, तो दूसरा भी बदल जाएगा।
a = b = [0, 1, 2]
print(a is b)
# True
a[0] = 100
print(a)
# [100, 1, 2]
print(b)
# [100, 1, 2]
नीचे के समान।
b = [0, 1, 2]
a = b
print(a is b)
# True
a[0] = 100
print(a)
# [100, 1, 2]
print(b)
# [100, 1, 2]
यदि आप उन्हें अलग से संसाधित करना चाहते हैं, तो बस प्रत्येक को असाइन करें।
after c = []; d = [], c and d are guaranteed to refer to two different, unique, newly created empty lists. (Note that c = d = [] assigns the same object to both c and d.)
3. Data model — Python 3.10.4 Documentation
a = [0, 1, 2]
b = [0, 1, 2]
print(a is b)
# False
a[0] = 100
print(a)
# [100, 1, 2]
print(b)
# [0, 1, 2]
कॉपी मॉड्यूल में कॉपी () और डीपकॉपी () के साथ उथली और गहरी प्रतियां उत्पन्न करने के तरीके भी हैं।