در حال بارگذاری...

عوض کردن همان شیء

در plate اول tea نشسته و water پشت آن است. plate[0] = "soup" جایگاه صفر را soup می‌کند و tea دیگر آنجا نیست. water سر جایش می‌ماند، جایگاه 1. تعداد همان دو تا است. نه چیزی به ته چسبیده، نه چیزی از ته جدا شده.

print مقدارها را به ترتیبی که نشسته‌اند می‌نویسد و قلاب‌های فهرست را هم می‌آورد. soup اول است چون همان جایگاه صفر را عوض کردید. len(plate) هنوز 2 است. برنامهٔ اول جایگاه 1 را در خط جدا نمی‌نویسد. همان خط فهرست نشان می‌دهد water آنجاست.

soup جای tea را گرفت

python
plate = ["tea", "water"]
plate[0] = "soup"

print(plate)
print(len(plate))

روی صفحه اول soup است، بعد water، بعد عدد 2. جایگاه 1 تکان نخورده. tea دیگر داخل plate نیست.

same = plate برای همان فهرستی که دارید یک نام دوم می‌گذارد. فهرست دیگری ساخته نمی‌شود. plate[1] = "soup" به‌جای water می‌نشیند و جایگاه صفر همان tea می‌ماند. نام same هم در جایگاه 1 مقدار soup را نشان می‌دهد. same[1] هم soup است، هرچند برنامه به‌جای آن جایگاه، همهٔ فهرست را می‌نویسد.

یک فهرست، دو نام

python
plate = ["tea", "water"]
same = plate
plate[1] = "soup"

print(plate)
print(same)

هر دو خط tea را می‌نویسند و بعد soup را. water از هر دو نام رفته. یک جایگزینی، یک فهرست. در این صفحه نسخه‌ای جدا نساختید.

تا وقتی plate فقط tea و water را دارد، plate[2] = "bread" برنامه را متوقف می‌کند. جایگاه 2 هنوز نیست. عوض کردن یک جایگاه، جایگاه تازه‌ای ته فهرست باز نمی‌کند. این خط در برنامه‌های بالا نیست.

plate = ["soup", "water"] کار دیگری است. یک فهرست تازه می‌سازد. فهرستی که داشتید برای هر نامی که هنوز همان فهرست را نشان می‌دهد سر جایش می‌ماند. این صفحه مقدار را داخل همان فهرستی عوض می‌کند که از قبل دارید.

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

دو صفحه را ببینید

  1. برنامهٔ اول فهرست را چه می‌نویسد و بعد چه عددی؟
  2. بعد از آن برنامه، در جایگاه 1 چیست؟
  3. هر دو print در برنامهٔ دوم چه می‌نویسند؟
  4. چرا plate[2] = "bread" وقتی plate فقط tea و water دارد برنامه را متوقف می‌کند؟

تعداد همان دو تا می‌ماند

در برنامهٔ اول soup جای tea را می‌گیرد و تعداد 2 می‌ماند، پس صفحه soup است، بعد water، بعد 2. water هنوز در جایگاه 1 است. در برنامهٔ دوم هر دو نام tea را نشان می‌دهند و بعد soup را، چون same و plate یک فهرست‌اند و جایگاه صفر tea مانده. plate[2] = "bread" می‌ایستد: آن جایگاه نیست و این جایگزینی یکی اضافه نمی‌کند.

🧠 دانش خود را بیازمایید

آماده شروع

دانش خود را بیازمایید

خود را با این آزمون تعاملی به چالش بکشید و ببینید موضوع را چقدر خوب درک کرده‌اید

❓
5
سوالات
🎯
70%
برای قبولی
♾️
∞
زمان
🔄
∞
تلاش‌ها

📝 دستورالعمل‌ها

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