Python

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

List Comprehensions

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

[box type=”info” align=”” class=”” width=””]ساختار کلی[/box]

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

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

[box type=”info” align=”” class=”” width=””]مثال‌های کاربردی[/box]

[box type=”success” align=”” class=”” width=”50%”]تولید لیست از اعداد:[/box]

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

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

خروجی:

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

[box type=”success” align=”” class=”” width=”50%”]فیلتر کردن با شرط:[/box]

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

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

خروجی:

[4, 16, 36, 64, 100]

[box type=”success” align=”” class=”” width=”50%”]تبدیل رشته‌ها به حروف بزرگ:[/box]

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

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

خروجی:

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

[box type=”success” align=”” class=”” width=”50%”]تولید زوج‌های مرتب (Tuple):[/box]

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

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')]

[box type=”info” align=”” class=”” width=””]مزایای لیست‌های تولیدی:[/box]

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

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

نمایش بیشتر

هادی محمدیان

هادی محمدیان | متخصص پایگاه داده، تحلیل داده و فرآیندهای سازمانی با تجربه عملی در طراحی و بهینه‌سازی زیرساخت‌های داده. در hadimohammadian.ir مفاهیم کاربردی مدیریت پایگاه داده، تحلیل داده، SQL، Python و اصول مهندسی داده را همراه با نگاه فرآیندمحور به زبان فارسی آموزش می‌دهم. هدف من پیوند دادن دانش فنی داده با نیازهای واقعی کسب‌وکار و کمک به سازمان‌ها برای تصمیم‌گیری داده‌محور است.

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

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

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