الانتقال إلى المحتوى الرئيسي

كيف يمكنني إنشاء صفيف يقرأ بالتساوي من اليسار إلى اليمين ومن اليمين إلى اليسار في بيثون? - دليل البرمجة

  • الدكتورة بهجة الكواهلة
  • المدونة

هناك العديد من الطرق للعمل مع المصفوفات في البرمجة ، وقد تكون إحدى المهام المثيرة للاهتمام هي إنشاء مصفوفة تقرأ بالتساوي من اليسار إلى اليمين ومن اليمين إلى اليسار. في هذا الدليل ، سننظر في كيفية حل هذه المشكلة في بايثون.

لإنشاء مثل هذه المصفوفة ، سنحتاج إلى استخدام إحدى وظائف بايثون المدمجة-تخفيف الضغط. يتيح لك التفريغ في بايثون تعيين قيم عناصر المصفوفة لعدة متغيرات في وقت واحد.

دعونا ننظر إلى مثال:

# إنشاء صفيف

صفيف = [1, 2, 3, 4, 5]

# تفريغ مجموعة

أ ، ب ، ج ، د ، هـ = صفيف

بعد تنفيذ هذا الرمز ، سنقوم بإنشاء المتغيرات أ ، ب ، ج ، د ، هـ ، والتي ستحتوي على قيم عناصر المصفوفة. الآن يمكننا التحقق مما إذا كانت المصفوفة قابلة للقراءة بنفس القدر من البداية ومن النهاية.

  1. كيف يمكنني إنشاء صفيف على الوجهين في بيثون?
  2. مراجعة
  3. إنشاء صفيف على الوجهين في بايثون
  4. أمثلة على استخدام صفيف على الوجهين
  5. سؤال وجواب
  6. كيف يمكنني إنشاء صفيف يقرأ بنفس الطريقة من اليسار إلى اليمين ومن اليمين إلى اليسار في بيثون?
  7. كيف يمكنني معرفة ما اذا كان صفيف هو متناظرة في بيثون?
  8. كيف يمكنني إنشاء صفيف يقرأ بنفس الطريقة من اليسار إلى اليمين ومن اليمين إلى اليسار باستخدام حلقة في بيثون?

كيف يمكنني إنشاء صفيف على الوجهين في بيثون?

في لغة برمجة بايثون ، الصفيف ذو الوجهين أو الصفيف ثنائي الأبعاد هو جدول قيم يتكون من صفوف وأعمدة. يسمح لك بتخزين البيانات في شكل مناسب ، حيث يحتوي كل عنصر على فهرسين: الأول للصف والثاني للعمود.

يمكنك إنشاء صفيف على الوجهين في بيثون باستخدام القوائم المتداخلة. القائمة الخارجية عبارة عن صفوف ، والقوائم الداخلية عبارة عن أعمدة. هنا مثال على مثل هذه المصفوفة:

[[1, 2, 3],

[4, 5, 6],

[7, 8, 9]]

يوضح هذا المثال مصفوفة ذات وجهين 3 3 3. إذا قمت بالوصول إلى عناصر هذه المصفوفة بواسطة الفهارس ، يمكنك الوصول إلى كل عنصر. على سبيل المثال ، سيكون العنصر الذي يحتوي على فهارس (0 ، 0) مساويا لـ 1 ، وسيكون العنصر الذي يحتوي على فهارس (1 ، 2) مساويا لـ 6 ، وهكذا.

لإنشاء مثل هذا الصفيف ، يكفي تحديد عدة قوائم متداخلة بالقيم الضرورية. على سبيل المثال:

[1 ، 2 ، 3],

[4, 5, 6],

[7, 8, 9]]

الآن المتغير أر يحتوي على صفيف على الوجهين من المثال أعلاه. للوصول إلى عناصر المصفوفة ، يمكنك استخدام فهرسين. على سبيل المثال:

طباعة (آر [0] [0]) # النتيجة: 1

طباعة (آر [1] [2]) # النتيجة: 6

وبالتالي ، يمكنك بسهولة إنشاء مصفوفة على الوجهين في بايثون باستخدام قوائم متداخلة والوصول إلى عناصرها باستخدام فهرسين.

مراجعة

هناك طرق مختلفة لإنشاء المصفوفات في البرمجة ، أحدها هو إنشاء مصفوفات يمكن قراءتها بنفس القدر من اليسار إلى اليمين ومن اليمين إلى اليسار. تسمى هذه المصفوفات صفائف متناظرة.

الصفيف المتناوب له شكل متماثل فيما يتعلق بمركزه. هذا يعني أن عناصر المصفوفة مرتبة بطريقة تقرأ بنفس الطريقة من اليسار إلى اليمين ومن اليمين إلى اليسار. على سبيل المثال ، صفيف [1, 2, 3, 2, 1] إنها مصفوفة متناظرة ، لأنها تقرأ نفس الشيء من اليسار إلى اليمين ومن اليمين إلى اليسار.

هناك عدة طرق لإنشاء مصفوفة متناظرة في بايثون. واحد منهم هو استخدام شرائح. تسمح لك الشرائح بتحديد أجزاء من صفيف وفقا لقواعد معينة. لإنشاء مصفوفة متناظرة باستخدام الشرائح ، يمكنك استخدام الكود التالي:

صفيف = [1, 2, 3, 4, 5]

متناظر_أراي = صفيف + صفيف[::-1]

طباعة (متناظر_أراي) # [1, 2, 3, 4, 5, 4, 3, 2, 1]

هناك طريقة أخرى لإنشاء مصفوفة متناظرة وهي استخدام حلقة. في حلقة ، يمكنك إضافة عناصر إلى المصفوفة أولا بترتيب تصاعدي ، ثم بترتيب عكسي. على سبيل المثال:

صفيف = [1, 2, 3, 4, 5]

متناظر_أراي = []

لأني في صفيف:

متناظرة.إلحاق (ط)

لأني في مجموعة [:: -1]:

متناظرة.إلحاق (ط)

طباعة (متناظر_أراي) # [1, 2, 3, 4, 5, 4, 3, 2, 1]

يمكنك أيضا استخدام وظائف لإنشاء مجموعة متناظرة. على سبيل المثال ، تقوم دالة النطاق() بإرجاع سلسلة من الأرقام من القيمة الأولية إلى القيمة النهائية بخطوة معينة. باستخدام وظيفة النطاق () ، يمكنك إنشاء مصفوفة متناظرة عن طريق تحديد قيمة البداية والنهاية وخطوة تساوي -1. على سبيل المثال:

البداية = 1

النهاية = 5

الخطوة = -1

صفيف = قائمة (نطاق (بداية ، نهاية ، خطوة)) + قائمة(نطاق(بداية ، نهاية + 1))

طباعة (صفيف) # [1, 2, 3, 4, 5, 4, 3, 2, 1]

نتيجة لذلك ، يمكن إنشاء مصفوفة متناظرة في بايثون بطرق مختلفة ، بما في ذلك استخدام الشرائح والحلقات والوظائف. كل من هذه الطرق لها مزاياها ويمكن اختيارها اعتمادا على الوضع المحدد وتفضيلات المبرمج.

إنشاء صفيف على الوجهين في بايثون

المصفوفة ذات الوجهين ، والمعروفة أيضا باسم المصفوفة المتماثلة ، هي مصفوفة تقرأ بالتساوي من اليسار إلى اليمين ومن اليمين إلى اليسار. في بايثون ، يمكنك بسهولة إنشاء مثل هذه المصفوفة باستخدام الشرائح والجمع بين القوائم.

فيما يلي مثال على التعليمات البرمجية التي تنشئ مصفوفة ذات وجهين تحتوي على أرقام من 1 إلى 5:

مجموعة = [*مجموعة (1 ، 6)] +[*مجموعة (5 ، 0 ، -1)]

طباعة (صفيف)

ستكون نتيجة تنفيذ هذا الرمز كما يلي:

[1, 2, 3, 4, 5, 5, 4, 3, 2, 1]

تتم طباعته في وحدة التحكم.

لإنشاء صفائف مختلفة على الوجهين وفقا لاحتياجاتك. على سبيل المثال ، إذا كنت ترغب في إنشاء مصفوفة ذات وجهين بأحرف ، فأنت بحاجة إلى تغيير النطاق المستخدم ونوع بيانات العناصر في المصفوفة.

من المهم أن تتذكر أنه في بايثون ، تبدأ فهارس القائمة من 0 ، وبالتالي فإن العنصر الأول من القائمة يحتوي على فهرس 0 ، والعنصر الأخير هو فهرس طول القائمة ناقص واحد.

آمل أن يكون هذا الدليل قد ساعد على فهم كيفية إنشاء صفيف على الوجهين في بيثون باستخدام شرائح والجمع بين القوائم.

أمثلة على استخدام صفيف على الوجهين

يمكن أن تكون المصفوفة ذات الوجهين ، أي المصفوفة التي تقرأ بالتساوي من اليسار إلى اليمين ومن اليمين إلى اليسار ، مفيدة في العديد من المواقف. فيما يلي بعض الأمثلة على استخدام مثل هذه المصفوفة:

  • التحقق من وجود متلازمة.

    أحد الاستخدامات الأكثر شيوعا للمصفوفة ذات الوجهين هو التحقق من وجود متناظر ، أي الكلمات أو العبارات أو الأرقام التي يمكن قراءتها بالتساوي في كلا الاتجاهين. يمكن استخدام صفيف على الوجهين لتخزين مثل هذا التسلسل والتحقق من وجود متناظر.

  • تقليد قائمة مرتبطة بشكل مضاعف.

    يمكن استخدام مصفوفة ذات وجهين لمحاكاة بنية البيانات لقائمة مرتبطة بشكل مضاعف. في هذه الحالة ، لن يحتوي كل عنصر من عناصر المصفوفة على قيمة فحسب ، بل سيحتوي أيضا على مرجع للعنصرين السابق والتالي.

  • تنفيذ مهام الوصول المتماثل.

    في المهام التي تتطلب الوصول إلى البيانات المتماثلة ، يمكن أن تكون المصفوفة ذات الوجهين مفيدة للغاية. على سبيل المثال ، في الألعاب حيث يمكن للاعب التحرك في جميع أنحاء الملعب في اتجاهات مختلفة ، يمكن أن تمثل المصفوفة ذات الوجهين ملعبا.

  • تنفيذ خوارزميات البحث والفرز.

    يمكن استخدام مصفوفة ذات وجهين لتنفيذ خوارزميات البحث والفرز المختلفة. على سبيل المثال ، يمكن تعميم خوارزمية البحث الثنائي للبحث عن عناصر في مصفوفة ذات وجهين.

يمكن أن تكون أمثلة استخدام مصفوفة ذات وجهين في البرمجة متنوعة للغاية. يوفر هذا النوع المحدد من المصفوفة إمكانات مرنة ويمكن أن يكون أداة فعالة لحل مجموعة متنوعة من المهام.

سؤال وجواب

كيف يمكنني إنشاء صفيف يقرأ بنفس الطريقة من اليسار إلى اليمين ومن اليمين إلى اليسار في بيثون?

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

كيف يمكنني معرفة ما اذا كان صفيف هو متناظرة في بيثون?

للتحقق مما إذا كانت المصفوفة متناظرة في بايثون ، يمكنك استخدام الشرائح. قم بإنشاء مصفوفة جديدة ومقارنتها بالصفيف العكسي الذي تم الحصول عليه باستخدام الشرائح. على سبيل المثال ، آر = [1, 2, 3, 2, 1] إذا أر = = أر [:: -1]: طباعة ("الصفيف هو متناظرة") آخر: طباعة ("المصفوفة ليست متناظرة") ستكون نتيجة تنفيذ هذا الرمز" المصفوفة متناظرة " ، حيث ستبدو المصفوفة من اليسار إلى اليمين كما هي من اليمين إلى اليسار.

كيف يمكنني إنشاء صفيف يقرأ بنفس الطريقة من اليسار إلى اليمين ومن اليمين إلى اليسار باستخدام حلقة في بيثون?

لإنشاء صفيف سيتم قراءته بالتساوي من اليسار إلى اليمين ومن اليمين إلى اليسار باستخدام حلقة في بايثون ، يمكنك استخدام الحلقة. على سبيل المثال ، لإنشاء مصفوفة تحتوي على أرقام من 1 إلى 5 ، يمكنك استخدام الكود التالي: آر =[] ل أنا في النطاق(1 ، 6): آر.إلحاق (ط) آر + = آر [:: -1] [1:[طباعة (آر) ستكون نتيجة تنفيذ هذا الرمز [1, 2, 3, 4, 5, 4, 3, 2, 1], مما يعني أنه يمكن قراءة المصفوفة بنفس الطريقة من اليسار إلى اليمين ومن اليمين إلى اليسار.