பைத்தானில், மாறிகளுக்கு மதிப்புகளை ஒதுக்க = ஆபரேட்டர் பயன்படுத்தப்படுகிறது.
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
இடது பக்கத்தில் ஒரு மாறி இருந்தால், அது ஒரு tuple ஆக ஒதுக்கப்படும்.
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
முழு எண்கள், மிதக்கும் புள்ளி எண்கள் மற்றும் சரங்கள் போன்ற மாறாத (மாற்ற முடியாத) பொருட்களைக் காட்டிலும், பட்டியல்கள் மற்றும் அகராதி வகைகள் போன்ற மாறக்கூடிய பொருள்களை ஒதுக்கும்போது கவனமாக இருக்கவும்.
#ERROR!
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]
நகல் தொகுதியில் நகல்() மற்றும் ஆழமான நகல்() உடன் ஆழமற்ற மற்றும் ஆழமான நகல்களை உருவாக்கும் முறைகளும் உள்ளன.