بايثون هي واحدة من لغات البرمجة الأكثر شعبية وسهلة التعلم. يوفر عددا كبيرا من الاحتمالات للعمل مع البيانات ، بما في ذلك القوائم. القوائم هي مجموعات مرتبة من العناصر التي يمكن أن تحتوي على أنواع مختلفة من البيانات. غالبا ما يكون من الضروري تبديل العناصر في القائمة لتغيير ترتيب البيانات أو إجراء عملية أخرى.
في هذه المقالة ، سنلقي نظرة على بعض أفضل الطرق لمبادلة العناصر في قائمة بايثون. سننظر في كيفية استبدال عنصرين في الأماكن ، وخلط جميع العناصر بترتيب عشوائي. وسوف نقدم أيضا أمثلة التعليمات البرمجية لكل من هذه الأساليب بحيث يمكنك بسهولة فهم كيف يعمل وتطبيقه في المشاريع الخاصة بك.
واحدة من أسهل الطرق لمبادلة العناصر في القائمة هي استخدام متغير مؤقت. هذه الطريقة مناسبة عندما تحتاج إلى تبديل عنصرين فقط. يمكنك إنشاء متغير مؤقت ، وتخزين قيمة العنصر الأول ، ثم تعيين قيمة العنصر الثاني إلى الأول ، ثم تعيين قيمة العنصر الثاني إلى المتغير المؤقت. وبالتالي ، يتم عكس قيم العناصر. يمكننا الاستمرار في استخدام هذه الطريقة لأي عدد من العناصر ، ولكن قد يستغرق الأمر بعض الوقت وقد يصبح الرمز أكثر تعقيدا.
- طريقة باستخدام متغير مؤقت
- طريقة باستخدام عامل التعيين
- طريقة استخدام تفريغ توبل
- طريقة باستخدام طريقة الفهرس ()
- الطريقة باستخدام الدالة العكسية ()
- سؤال وجواب
- كيف يمكنني مبادلة عنصرين في قائمة?
- كيف يمكنني مبادلة العناصر في قائمة دون استخدام متغير مؤقت?
- كيف يمكنني مبادلة العناصر حسب الفهرس في قائمة?
طريقة باستخدام متغير مؤقت
تتمثل إحدى طرق تبديل العناصر في قائمة باستخدام بايثون في استخدام متغير مؤقت لحفظ قيمة عنصر واحد قبل استبداله.
يوجد أدناه نموذج رمز يوضح هذه الطريقة:
قائمة قبل الاستبدال:
قائمتي = [1, 2, 3, 4, 5]
فهارس العناصر:
العنصر 1: الفهرس 0
العنصر 2: الفهرس 1
الركن 3: الفهرس 2
العنصر 4: الفهرس 3
العنصر 5: الفهرس 4
الخوارزمية:
1. قم بإنشاء متغير مؤقت وقم بتعيين قيمة العنصر الأول من القائمة (قائمتي[0]).
2. عين العنصر الأول من القائمة قيمة العنصر الثاني (قائمتي[0] = قائمتي[1]).
3. عين العنصر الثاني من القائمة قيمة متغير مؤقت (قائمتي[1] = درجة الحرارة).
4. العنصر الثاني يساوي الآن الأول ، والعنصر الأول يساوي متغير الوقت - لقد قاموا بتبديل الأماكن.
كود:
درجة الحرارة = قائمتي [0]
قائمتي [0] = قائمتي [1]
قائمتي [1] = درجة الحرارة
قائمة بعد الاستبدال:
قائمتي = [2, 1, 3, 4, 5]
باستخدام هذه الطريقة ، يمكنك تبديل أي عناصر قائمة ببساطة عن طريق تغيير فهارس العناصر.
ومع ذلك ، تصبح هذه الطريقة غير فعالة مع وجود عدد كبير من العناصر في القائمة ، حيث يتم تعيين قيمة لمتغير في كل مرة. في مثل هذه الحالات ، يوصى باستخدام طرق أخرى أكثر كفاءة ، مثل استخدام مهام متعددة أو وظائف بيثون مدمجة ، على سبيل المثال ، الطريقة العكسية ().
الطريقة باستخدام عامل التعيين
هناك عدة طرق لمبادلة العناصر في قائمة في بيثون ، واحد منهم هو استخدام عامل التعيين.
من أجل مبادلة عنصرين في القائمة ، يمكنك استخدام متغير مؤقت لحفظ قيمة أحد العناصر. ثم يمكنك تعيين قيمة العنصر الثاني إلى الأول ، ثم قيمة المتغير المؤقت إلى العنصر الثاني.
هنا هو رمز المثال الذي يوضح هذه الطريقة:
"'بايثون
العناصر (الأولى ، ي):
تيمب = لست [أنا]
لست [ط] = لست [ي]
لست [ي] = درجة الحرارة
# مثال على استخدام وظيفة قائمتي
= [1, 2, 3, 4, 5]
طباعة ("قائمة المصدر:" ، قائمتي)
عناصر المبادلة(قائمتي ، 1 ، 3)
طباعة ("قائمة بالعناصر المبادلة:" ، قائمتي)
"`
إخراج البرنامج:
"`
القائمة الأصلية: [1, 2, 3, 4, 5]
قائمة مع العناصر المبادلة: [1, 4, 3, 2, 5]
«`
في هذا المثال ، يتم إنشاء وظيفة 'سواب_ليمنتس' ، الذي يأخذ قائمة وفهرسين من العناصر التي تحتاج إلى تبديل. تستخدم الدالة المتغير المؤقت 'درجة الحرارة' لتخزين قيمة العنصر الأول. ثم يقوم بتعيين قيمة العنصر الثاني للعنصر الأول ، ثم قيمة المتغير المؤقت للعنصر الثاني. بعد استدعاء الوظيفة وطباعة القائمة ، يمكنك أن ترى أنه تم تبديل العناصر ذات الفهارس 1 و 3.
هذه الطريقة بسيطة ومباشرة ، ولكنها تتطلب كتابة عدة أسطر من التعليمات البرمجية لتبادل العناصر. إذا كنت بحاجة إلى تبديل أكثر من عنصرين ، فيمكن أن يصبح الرمز مرهقا جدا ويصعب قراءته.
طريقة استخدام تفريغ توبل
هناك طريقة أخرى لمبادلة العناصر في القائمة وهي استخدام تفريغ المجموعة. تفريغ توبل يسمح لك لتعيين القيم لمتغيرات متعددة في وقت واحد باستخدام توبل. باستخدام هذه الطريقة ، يمكننا بسهولة تبديل قيم عنصري القائمة دون الحاجة إلى استخدام متغيرات إضافية.
يوضح مثال الكود أدناه كيفية استخدام تفريغ المجموعة لمبادلة مواقع عنصرين في قائمة:
# إنشاء
قائمتي = [1, 2, 3, 4, 5]
# تبادل قيم العناصر
قائمتي [0] ، قائمتي [1] = قائمتي [1] ، قائمتي [0]
طباعة (قائمتي)
نتيجة لتنفيذ التعليمات البرمجية ، سوف نحصل على القائمة التالية:
[2, 1, 3, 4, 5]
كما ترى من المثال ، نقوم ببساطة بتحديد فهارس العناصر التي يجب تبديلها على جانبي عامل التعيين ، وفصلها بفاصلة. سيتم تغيير ترتيب القيم تلقائيا دون استخدام متغيرات إضافية.
هذه الطريقة موجزة ومريحة للغاية ، لأنها تسمح لك بتسجيل تبادل القيم في قائمة بسطر واحد من التعليمات البرمجية.
طريقة باستخدام طريقة الفهرس ()
تتمثل إحدى طرق تبديل العناصر في قائمة في بايثون في استخدام طريقة الفهرس (). تتيح لك هذه الطريقة الحصول على فهرس عنصر في القائمة.
مثال الاستخدام:
قائمتي = ['أ' ، 'ب' ، 'ج' ، 'د']
فهرس_ أ = قائمتي.الفهرس ('أ')
فهرس ب = قائمتي.الفهرس ('ب')
قائمتي [فهرس_أ] ، قائمتي [فهرس_ب] = قائمتي [فهرس_ب] ، قائمتي [فهرس_أ]
طباعة (قائمتي)
. بعد ذلك ، نقوم بتبديل العناصر عن طريق تعيين القيم باستخدام الفهارس. نتيجة لذلك ، نحصل على قائمة بالعناصر المبادلة.
.
هذه الطريقة بسيطة وفعالة ، ولكنها قد لا تكون قابلة للتطبيق إذا كانت هناك حاجة إلى تبديل العديد من العناصر أو إذا كانت العناصر لها بنية معقدة.
الطريقة باستخدام الدالة العكسية ()
هناك طريقة أخرى لمبادلة العناصر في قائمة في بايثون وهي استخدام الوظيفة العكسية() لفئة القائمة المضمنة. عكس () وظيفة عكس ترتيب العناصر في القائمة.
لاستخدام هذه الطريقة ، تحتاج إلى اتباع الخطوات التالية:
- حدد القائمة التي تريد تبديل عناصرها.
- استدعاء وظيفة عكس () لتغيير ترتيب العناصر في القائمة.
- اطبع القائمة المعدلة للتأكد من صحتها.
يوجد أدناه مثال رمز يوضح استخدام الدالة العكسية() :
قائمتي = [1, 2, 3, 4, 5]
قائمتي.عكس()
طباعة (قائمتي)
إخراج البرنامج:
[5, 4, 3, 2, 1]
.
هذه الطريقة هي واحدة من أبسط الطرق ، لكنها تغير القائمة الأصلية. إذا كنت ترغب في حفظ القائمة الأصلية والحصول على قائمة جديدة مع العناصر تبادلت ، يمكنك استخدام إما عكس() وظيفة أو طريقة تشريح أقل كفاءة.
يعد استخدام الوظيفة العكسية () مناسبا عندما تريد تبديل جميع عناصر القائمة ، ولكن قد يصبح غير مريح إذا كنت تريد تبديل بعض العناصر فقط أو العمل مع هياكل بيانات أكثر تعقيدا.
سؤال وجواب
كيف يمكنني مبادلة عنصرين في قائمة?
هناك عدة طرق لمبادلة عنصرين في القائمة. طريقة واحدة هي استخدام متغير مؤقت. على سبيل المثال ، هنا هو الرمز:
كيف يمكنني مبادلة العناصر في قائمة دون استخدام متغير مؤقت?
من أجل مبادلة العناصر في القائمة دون استخدام متغير مؤقت ، يمكنك استخدام مهمة متعددة. على سبيل المثال ، هنا هو الرمز:
كيف يمكنني مبادلة العناصر حسب الفهرس في قائمة?
لمبادلة العناصر حسب فهارسها في القائمة ، يمكنك استخدام التعيين باستخدام الفهارس. على سبيل المثال ، هنا هو الرمز: