آموزش تابع zip در پایتون
123 بازدید --

تابع zip در پایتون برای ترکیب چندین دنباله قابل پیمایش (مانند لیست، تاپل، رشته) به یک شیء iterable(قابل پیمایش) جدید با نوع zip object استفاده می‌شود.

این تابع به طور موازی المان های متناظر از لیست های ورودی(یا هر داده ساختار دیگه مثل تاپل و …) را گرفته و آن ها را به صورت تاپل های متناظر در یک لیست خروجی قرار می دهد.

ما می توانیم خروجی تابع zip را به یک لیست تبدیل کنیم در این صورت خروجی ما یک لیست از تاپل ها می باشد.

در ادامه برای درک بهتر مثال هایی را با هم بررسی می کنیم.

# تعریف دو لیست
names = ["Ali", "Maryam", "Ahmad"]
ages = [20, 22, 25]

# ترکیب دو لیست با استفاده از zip
zipped_data = zip(names, ages)

# مشاهده نوع شیء جدید
print(type(zipped_data))
# <class 'zip'>

# مشاهده محتوای شیء جدید
print(list(zipped_data))
# [('Ali', 20), ('Maryam', 22), ('Ahmad', 25)]

 

خب در کد بالا ما قصد داریم لیست های نام و سن افراد با همدیگر ترکیب کنیم.برای این منظور از تابع zip استفاده می کنیم.

خروجی تابع zip در متغیری به نام zipped_data  ذخیره شده است.

نوع (type) خروجی تابع zip یک شی از کلاس آبجکت می باشد به همین دلیل برای مشاهده خروجی نهایی در قالب یک لیست باید از تابع list استفاده کنیم.(متغیر zipped_data  را به لیست تبدیل کنیم)

پیمایش روی تابع zip با استفاده از حلقه for

در مثال زیر با استفاده از حلقه for خروجی تابع zip را پیمایش می کنیم.

fruits = ["apple", "banana", "cherry"]
colors = ["red", "yellow", "green"]
for fruit, color in zip(fruits, colors):
    print(fruit, "is", color)