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

القوائم في Python عبارة عن مصفوفات مألوفة من لغات البرمجة الأخرى مثل C و C ++. يمكنك تغيير حجم القائمة ، وتبني Python في طرق قائمة مختلفة للراحة. يمكنك تخزين أنواع بيانات متعددة داخل قائمة ، مثل السلاسل والعناصر وحتى القوائم الأخرى.

لماذا نستخدم تقنيات التكرار المختلفة؟

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

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

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

instagram viewer

1. العبور باستخدام طريقة التكرار والحلقة

إحدى الطرق الأكثر شيوعًا لاجتياز قائمة Python هي استخدام حلقة for ، وهي تشبه إلى حد كبير لغات البرمجة الأخرى.

arr = [10، 20، 30، 40]

لـ val in arr:
مطبعة('القيمة'، فال)

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

  • البدء: يشير إلى فهرس البداية لاجتياز الحلقة for.
  • stop: يخبر البرنامج بالفهرس النهائي / الإيقاف لاجتياز حلقة for. من الشائع استخدام طول القائمة (عدد العناصر) كفهرس التوقف.
  • الخطوة: إن وسيطة حجم الخطوة اختيارية. إذا تم توفيره ، فإنه يحدد المقدار الذي تزيد الحلقة for من عداد التشغيل في كل مرة. بشكل افتراضي ، حجم الخطوة هو 1.

لاجتياز قائمة Python باستخدام النطاق ():

arr = [10، 20، 30، 40، 50، 60]

للمفتاح في النطاق (0 ، len (arr) ، 2):
مطبعة('الأس'، مفتاح)

المثال أعلاه يدير ملف إلى عن على حلقة من الفهرس 0 حتى طول الصفيف ويزيد عداد الحلقة بمقدار 2.

2. عبور الاختزال باستخدام قائمة الفهم

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

على سبيل المثال ، لحساب مربع أول 10 أرقام ، يمكنك ببساطة استخدام:

sq = [x ** 2 لـ x في النطاق (10)] 

بالنظر إلى قائمة الأرقام ، يمكنك طباعتها باستخدام قائمة الفهم على النحو التالي:

arr = [1، 3، 5، 7، 9]
[مطبعة(فال) إلى عن على فال إن آر]

تعد عمليات فهم القائمة قوية جدًا ويمكن أن تجعل الترميز أمرًا سهلاً للغاية بمجرد إتقانها ، لذا تأكد من قضاء بعض الوقت في ممارستها جيدًا.

3. استخدام وظائف Lambda المضمنة لاجتياز قائمة

عادة ، نعلن عن الدوال في بايثون باستخدام امتداد def الكلمة الرئيسية ويجب أن توفر وظيفة مخصصة للجسم والرأس. وظائف Lambda هي ميزة قوية في Python، مما يسهل كثيرًا كتابة تعليمات برمجية بسيطة وأقصر. ليس لها اسم ويمكن أن تحتوي فقط على تعبير واحد. ومع ذلك ، يمكنك تمرير أي عدد من المعلمات إلى دالة lambda.

عندما يقترن بامتداد خريطة() الطريقة ، يمكن أن تعمل وظيفة lambda بشكل فعال كملف إلى عن على عقدة. لطباعة قائمة بالأرقام باستخدام مجموعة من وظائف lambda و خريطة():

arr = [1 ، 3 ، 4 ، 5 ، 6 ، 7 ، 8]
myFun = قائمة(الخريطة (lambda z: z، arr))
مطبعة(متعتي)

حلقات Python بسيطة ولكنها موجودة في كل مكان

الحلقات ضرورية في كل لغة برمجة و Python لا تختلف. ستتضمن معظم البرامج التي تكتبها حلقة في وقت ما ، بشكل أو بآخر.

ينتقل هذا إلى شقين إذا كنت ترغب في استخدام Python لعلوم البيانات أو مشاريع التعلم الآلي.