النسخ
bag.copy() يأخذ القيم التي في bag في هذه اللحظة ويضعها في قائمة جديدة. الآن bag فيه tea ثم water، فالقائمة الجديدة فيها tea ثم water. الاسم other هو هذه القائمة الجديدة. other ليس bag.
قبل أي تبديل، المكان 0 في other هو tea والمكان 1 هو water. العدد 2. النسخة صورة هذه اللحظة. لا تتابع bag بعد ذلك.
bag[0] = "soup" يضع soup مكان tea داخل bag وحده. other ما زال يبدأ بـ tea، و water يبقى في المكان 1 في القائمتين. العدد في كلتيهما 2. النسخة لا تلتقط هذا التبديل اللاحق.
bag = ["tea", "water"]
other = bag.copy()
bag[0] = "soup"
print(bag)
print(other)
السطر الأول soup ثم water. السطر الثاني tea ثم water. soup في bag فقط. tea ما زال أول other. print يكتب كل قائمة مع أقواسها حتى ترى القائمتين معًا.
الاتجاه الآخر مثله. other[1] = "bread" يضع bread في other وحده. المكان 1 في bag يبقى water. هذا البرنامج لا يأخذ تلك الخطوة. يغيّر bag فقط بعد النسخ.
bag[:] يبني هو أيضًا قائمة جديدة بالقيم نفسها. هذا قطع للقائمة كلها، ونتيجته منفصلة عن bag. other = bag ليس نسخًا. الاسمان قائمة واحدة، فالتبديل اللاحق يظهر تحت الاسمين.
📊 ثلاث كتابات
| الكتابة | ما تحصل عليه |
|---|---|
| bag.copy() | قائمة جديدة بقيم هذه اللحظة |
| bag[:] | قائمة جديدة بتلك القيم نفسها |
| other = bag | ليست قائمة جديدة؛ الاسمان هما القائمة الواحدة |
اسم لا يُبقي tea
إذا كتبت other = bag ثم bag[0] = "soup"، فإن other يُظهر soup أيضًا. لم تكن هناك قائمة ثانية تُبقي tea. البرنامج أعلاه يستعمل copy()، لذلك other يُبقي tea ثم water.
الصفحة التالية ترتّب القيم. هذه الصفحة لا تغيّر الترتيب. tea يبقى أمام water في other لأن هذا كان الترتيب عند النسخ. soup أول bag فقط لأنك بدّلت المكان 0 بعد النسخ.
ما بقي منفصلًا
- ماذا يكتب البرنامج، السطر الأول ثم السطر الثاني؟
- بعد البرنامج، ما أول قيمة في other؟
- إذا جعلت بعد ذلك المكان 1 في other هو bread، فماذا يبقى في bag عند المكان 1؟
- ماذا يفعل other = bag ولا يفعله copy()؟
tea يبقى في النسخة
الشاشة soup ثم water، ثم tea ثم water. other ما زال يبدأ بـ tea. العدد في كلتيهما 2. bread في other يُبقي water في المكان 1 من bag. other = bag قائمة واحدة، فكان soup سيظهر تحت الاسمين. bag[:] قائمة جديدة أخرى بالقيم نفسها. الصفحة التالية ترتّب القيم. لا تصنع هذه النسخة.
🧠 اختبر معرفتك
اختبر معرفتك
تحدى نفسك مع هذا الاختبار التفاعلي واكتشف مدى فهمك للموضوع
📝 التعليمات
- اقرأ كل سؤال بعناية
- اختر أفضل إجابة لكل سؤال
- يمكنك إعادة الاختبار عدة مرات كما تريد
- سيتم عرض تقدمك في الأعلى