Python - Unpack Tuples

باز کردن تاپل

زمانی که یک تاپل را ایجاد می‌کنیم، اساساً مقادیری ار به آن نسبت می‌دهیم که به آن اصطلاحاً جمع کردن (packing) یک تاپل گفته می‌شود.

اما در پایتون این امکان فراهم است که مقادیر نسبت داده شده به یک تاپل را استخراج و هریک از این مقادیر را به متغیرهای دلخواه نسبت دهیم. به این کار در اصطلاح باز کردن (unpacking) یک تاپل گفته می‌شود.


fruits = ("apple", "banana", "cherry")

(green, yellow, red) = fruits

print(green)
print(yellow)
print(red)

خروجی:

تعداد متغیرها می‌بایست با تعداد مقادیر موجود در تاپل برابر باشد، در غیر اینصورت باید از علامت ستاره جهت جمع‌آوری باقیمانده مقادیر به صورت یک لیست استفاده کرد.

استفاده از ستاره

اگر تعداد متغیرها کمتر از تعداد مقادیر باشد، می‌توانید علامت * را به متغیر اضافه کرده تا مقادیر به صورت یک لیست به آن متغیر اختصاص داده شوند.


fruits = ("apple", "banana", "cherry", "strawberry", "raspberry")

(green, yellow, *red) = fruits

print(green)
print(yellow)
print(red)

خروجی:

اگر علامت ستاره به متغیری غیر از آخرین متغیر اضافه شود، پایتون مقادیر را تا زمانیکه مقادیر باقیمانده با متغیرهای باقیمانده برابر شوند، به متغیر ستاره‌دار اضافه می‌کند.


fruits = ("apple", "mango", "papaya", "pineapple", "cherry")

(green, *tropic, red) = fruits

print(green)
print(tropic)
print(red)

خروجی: