Python

لیست‌های تولیدی در پایتون

List Comprehensions

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

ساختار کلی

ساختار یک لیست تولیدی به این صورت است:

new_list = [expression for item in iterable if condition]
  • expression: یک عبارتی است که نتیجه آن به عنوان یک عنصر در لیست جدید قرار می‌گیرد.
  • item: یک متغیر است که هر کدام از عناصر لیست یا مجموعه اصلی (iterable) را در یک لحظه در خود نگه می‌دارد.
  • iterable: مجموعه یا لیستی است که از آن عناصر برای ساخت لیست جدید انتخاب می‌شوند.
  • condition (اختیاری): یک شرط است که فقط در صورتی که برقرار باشد، expression اجرا شده و نتیجه آن به لیست جدید اضافه می‌شود.

مثال‌های کاربردی

تولید لیست از اعداد:

فرض کنید می‌خواهید یک لیست از مربع اعداد 1 تا 10 بسازید:

squares = [x**2 for x in range(1, 11)]
print(squares)

خروجی:

[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]

فیلتر کردن با شرط:

در این مثال، فقط اعداد زوج را از 1 تا 10 انتخاب و مربع آن‌ها را محاسبه می‌کنیم:

even_squares = [x**2 for x in range(1, 11) if x % 2 == 0]
print(even_squares)

خروجی:

[4, 16, 36, 64, 100]

تبدیل رشته‌ها به حروف بزرگ:

در این مثال، می‌خواهیم تمامی کلمات یک لیست را به حروف بزرگ تبدیل کنیم:

words = ["python", "is", "awesome"]
upper_words = [word.upper() for word in words]
print(upper_words)

خروجی:

['PYTHON', 'IS', 'AWESOME']

تولید زوج‌های مرتب (Tuple):

می‌توانیم زوج‌های مرتب از دو لیست تولید کنیم:

list1 = [1, 2, 3]
list2 = ['a', 'b', 'c']
paired = [(x, y) for x in list1 for y in list2]
print(paired)

خروجی:

[(1, 'a'), (1, 'b'), (1, 'c'), (2, 'a'), (2, 'b'), (2, 'c'), (3, 'a'), (3, 'b'), (3, 'c')]

مزایای لیست‌های تولیدی:

  • کوتاه‌تر و خواناتر: کدها به صورت خلاصه و تمیز نوشته می‌شوند.
  • کارایی بالاتر: لیست‌های تولیدی به دلیل استفاده بهینه از حافظه و پردازش، کارایی بیشتری نسبت به حلقه‌های for دارند.

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

5/5 ( 1 امتیاز )
نمایش بیشتر

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

دکمه بازگشت به بالا