பைத்தானில் பல மாறிகளுக்கு பல அல்லது ஒரே மதிப்பை ஒதுக்குதல்

வணிக

பைத்தானில், மாறிகளுக்கு மதிப்புகளை ஒதுக்க = ஆபரேட்டர் பயன்படுத்தப்படுகிறது.

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]

நகல் தொகுதியில் நகல்() மற்றும் ஆழமான நகல்() உடன் ஆழமற்ற மற்றும் ஆழமான நகல்களை உருவாக்கும் முறைகளும் உள்ளன.

Copied title and URL