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