📋 درس ششم: لیستها و کار با دادههای گروهی
🎯 هدف این درس: آشنایی با لیستها، کار با دادههای گروهی و مدیریت مجموعهها
سلام دوست عزیز! 👋
تا اینجا با متغیرها کار کردیم، اما هر متغیر فقط یه مقدار رو ذخیره میکرده. توی برنامهنویسی، خیلی وقتها به چندین مقدار نیاز داریم که با هم توی یه جا ذخیره بشن.
فرض کن میخوای لیست دانشجوهای یه کلاس رو ذخیره کنی. به جای اینکه برای هر دانشجو یه متغیر جداگانه بسازی، میتونی از لیست استفاده کنی.
توی این درس، با هم یاد میگیریم:
- ✅ لیست چیه و چطور تعریفش کنیم
- ✅ دسترسی به آیتمهای لیست
- ✅ افزودن و حذف آیتمها
- ✅ حلقه روی لیستها
- ✅ پروژه عملی: مدیریت لیست کارها
📦 بخش ۱: لیست چیست و چطور تعریف کنیم؟
لیست یه مجموعه مرتب از چندین مقدار هست که میتونه هر نوع دادهای رو توی خودش نگه داره. در پایتون، لیستها با کروشه [] تعریف میشن.
ساختار کلی:
تعریف لیست
PYTHON
v3.12
🔒 RAW
نام_لیست = [مقدار۱, مقدار۲, مقدار۳]
مثال: لیست میوهها
لیست میوهها
PYTHON
v3.12
🔒 RAW
fruits = ["سیب", "موز", "پرتقال", "انگور"]
print(fruits)
💡 نکته جالب:
لیستها میتونن انواع مختلف داده رو با هم ذخیره کنن. مثلاً یه لیست میتونه همزمان شامل رشته، عدد و حتی لیست دیگه باشه.
🔍 بخش ۲: دسترسی به آیتمهای لیست
برای دسترسی به هر آیتم توی لیست، از اندیس (index) استفاده میکنیم. اندیسها از صفر شروع میشن.
مثال: دسترسی به آیتمها
دسترسی به آیتمها
PYTHON
v3.12
🔒 RAW
fruits = ["سیب", "موز", "پرتقال", "انگور"]
# دسترسی با اندیس مثبت (از ابتدا)
print(fruits[0]) # سیب
print(fruits[1]) # موز
print(fruits[2]) # پرتقال
print(fruits[3]) # انگور
# دسترسی با اندیس منفی (از انتها)
print(fruits[-1]) # انگور (آخرین آیتم)
print(fruits[-2]) # پرتقال
اگر به اندیسی دسترسی پیدا کنی که خارج از محدوده لیست باشه، پایتون خطای IndexError میده.
🔄 بخش ۳: افزودن و حذف آیتمها
لیستها قابلیت تغییر دارند؛ یعنی میتونی بعد از تعریف، آیتمهای جدید اضافه کنی یا آیتمهای موجود رو حذف کنی.
افزودن آیتم با append()
افزودن به لیست
PYTHON
v3.12
🔒 RAW
fruits = ["سیب", "موز"]
print("قبل از افزودن:", fruits)
# افزودن آیتم به انتهای لیست
fruits.append("پرتقال")
print("بعد از افزودن:", fruits)
# افزودن چند آیتم
fruits.append("انگور")
fruits.append("هندوانه")
print("لیست نهایی:", fruits)
حذف آیتم با remove()
حذف از لیست
PYTHON
v3.12
🔒 RAW
fruits = ["سیب", "موز", "پرتقال", "انگور"]
print("قبل از حذف:", fruits)
# حذف آیتم با مقدار
fruits.remove("موز")
print("بعد از حذف موز:", fruits)
# حذف آیتم با اندیس
del fruits[0] # حذف اولین آیتم
print("بعد از حذف اولین آیتم:", fruits)
🔁 بخش ۴: حلقه روی لیستها
یکی از قدرتمندترین کارهایی که با لیستها میشه انجام داد، پیمایش با حلقه for هست.
پیمایش لیست
PYTHON
v3.12
🔒 RAW
fruits = ["سیب", "موز", "پرتقال", "انگور"]
# پیمایش لیست
print("📋 لیست میوهها:")
for fruit in fruits:
print(f" - {fruit}")
# پیمایش با اندیس
print("\n🔢 میوهها با شماره:")
for i in range(len(fruits)):
print(f" {i+1}- {fruits[i]}")
📝 بخش ۵: پروژه عملی – مدیریت لیست کارها
📝 پروژه: مدیریت لیست کارها (To-Do List)
برنامهای بنویسید که به کاربر اجازه بده:
- کار جدید به لیست اضافه کنه
- کارهای موجود رو ببینه
- کار رو از لیست حذف کنه
- از برنامه خارج بشه
🔍 راهحل پروژه:
مدیریت لیست کارها
PYTHON
v3.12
🔒 RAW
tasks = [] # لیست خالی
while True:
print("\n" + "=" * 40)
print("📋 مدیریت لیست کارها")
print("=" * 40)
print("1. نمایش کارها")
print("2. افزودن کار جدید")
print("3. حذف کار")
print("4. خروج")
choice = input("\nانتخاب خود را وارد کنید (1-4): ")
if choice == "1":
# نمایش کارها
if not tasks:
print("\n📭 لیست کارها خالی است!")
else:
print("\n📋 لیست کارها:")
for i, task in enumerate(tasks, 1):
print(f" {i}- {task}")
elif choice == "2":
# افزودن کار جدید
task = input("کار جدید را وارد کنید: ")
if task:
tasks.append(task)
print(f"✅ کار '{task}' با موفقیت افزوده شد!")
else:
print("❌ متن کار نمیتواند خالی باشد!")
elif choice == "3":
# حذف کار
if not tasks:
print("\n📭 لیست کارها خالی است!")
else:
print("\n📋 لیست کارها:")
for i, task in enumerate(tasks, 1):
print(f" {i}- {task}")
try:
task_num = int(input("شماره کار مورد نظر برای حذف را وارد کنید: "))
if task_num > 0 and task_num <= len(tasks):
removed = tasks.pop(task_num - 1)
print(f"✅ کار '{removed}' با موفقیت حذف شد!")
else:
print("❌ شماره وارد شده معتبر نیست!")
except ValueError:
print("❌ لطفاً یک عدد وارد کنید!")
elif choice == "4":
print("\n🙏 خداحافظ!")
break
else:
print("❌ انتخاب نامعتبر! لطفاً دوباره تلاش کنید.")
📝 تمرینهای عملی
🎯 تمرین شماره ۱: جمع اعداد یک لیست
برنامهای بنویسید که یک لیست از اعداد دریافت کند و جمع تمام اعداد رو محاسبه کنه.
🔍 راهحل تمرین:
جمع اعداد لیست
PYTHON
v3.12
🔒 RAW
numbers = [10, 20, 30, 40, 50]
total = 0
for num in numbers:
total += num
print(f"اعداد: {numbers}")
print(f"جمع اعداد: {total}")
🎯 تمرین شماره ۲: پیدا کردن بزرگترین عدد در لیست
برنامهای بنویسید که بزرگترین عدد رو در یک لیست پیدا کنه.
🔍 راهحل تمرین:
بزرگترین عدد
PYTHON
v3.12
🔒 RAW
numbers = [45, 78, 23, 89, 12, 56]
max_num = numbers[0] # فرض میکنیم اولین عدد بزرگترینه
for num in numbers:
if num > max_num:
max_num = num
print(f"اعداد: {numbers}")
print(f"بزرگترین عدد: {max_num}")
🧩 جمعبندی درس
تبریک میگم! 🎉 توی این درس یاد گرفتی:
- ✅ لیست چیه و چطور تعریفش کنیم
- ✅ دسترسی به آیتمهای لیست با اندیس
- ✅ افزودن آیتم با
append() - ✅ حذف آیتم با
remove()وdel - ✅ پیمایش لیستها با حلقه
for - ✅ پروژه عملی: مدیریت لیست کارها
در درس بعدی، با توابع آشنا میشیم و میتونیم کدهای خودمون رو به بخشهای کوچکتر و قابل استفاده مجدد تقسیم کنیم.




نظر خود را بنویسید
با ثبت نظر، به بهبود محتوای ما کمک کنید