شارك المقالة

أفضل أكواد بايثون للمبتدئين والمحترفين أسرار التعامل مع القوائم باحترافية python code

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

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

ما أهمية استخدام Python Code مع القوائم؟

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

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

  • التعامل مع عدد كبير من البيانات.
  • استخراج القيم المطلوبة بسرعة.
  • تقليل حجم الكود.
  • تحسين قابلية قراءة المشروع.
  • تسهيل عمليات تحليل البيانات.

استخراج أكبر وأصغر القيم من القائمة باستخدام Python

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

import heapq

listData = [15,20,23,1,78,156,5,9]

print('big numbers', heapq.nlargest(4, listData))
print('low numbers', heapq.nsmallest(4, listData))

الدالة nlargest() تقوم بإرجاع أكبر عدد من العناصر الذي تحدده، بينما تقوم nsmallest() بإرجاع أصغر العناصر.

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

الفائدة من هذا Python Code

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

مثال عملي

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


طباعة عناصر القائمة بشكل منظم

من العمليات البسيطة التي يحتاج إليها المبرمج كثيرًا طباعة محتويات القائمة. ويمكنك تنفيذ ذلك بأكثر من طريقة في Python.

listData = [15,20,23,1,78,156,5,9]

print('print 1 :', listData)
print('print 2 :', *listData)

في الطريقة الأولى يتم طباعة القائمة بالشكل المعتاد، بينما تقوم علامة * بفك عناصر القائمة وتمرير كل عنصر بشكل منفصل إلى الدالة print().

ما الفرق بين الطريقتين؟

  • بدون * → يتم طباعة القائمة كعنصر واحد بالشكل [15, 20, 23, ...].
  • مع * → يتم فك عناصر القائمة وطباعتها بشكل منفصل.

هذه التقنية تُعرف باسم Unpacking، وهي من المميزات المهمة في Python ويمكن استخدامها مع القوائم والـ Tuples وغيرها من أنواع البيانات القابلة للتكرار.


استخراج العناصر الوسطى من القائمة باستخدام Unpacking

تدعم Python ميزة قوية تسمى Unpacking تسمح لك بتوزيع عناصر القائمة على مجموعة من المتغيرات بطريقة سهلة.

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

*_, middle, *_ = [15,20,23,1,78,156,5,9]

print(middle)

الفكرة هنا تعتمد على استخدام * لجمع مجموعة من العناصر داخل متغير، بينما يتم الاحتفاظ بالعنصر المحدد في المتغير middle.

ومن الطرق المفيدة أيضًا الحصول على جميع العناصر الموجودة بين العنصر الأول والأخير:

first, *middle, last = [15,20,23,1,78,156,5,9]

print(middle)

في هذه الحالة يتم تخزين أول عنصر داخل first، وآخر عنصر داخل last، بينما يتم وضع جميع العناصر الموجودة بينهما داخل القائمة middle.

لماذا يعتبر Unpacking مفيدًا؟

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

تعيين عدة متغيرات في سطر واحد

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

p1, p2, p3, p4 = 1, 2, 3, 4

print(p3)

في هذا المثال تم إنشاء أربعة متغيرات وتعيين قيمة لكل متغير في نفس السطر.

ستكون النتيجة:

3

هذا الأسلوب مفيد عندما تكون لديك مجموعة من القيم المرتبطة ببعضها وتريد تخزينها في متغيرات منفصلة بطريقة مختصرة.

مثال آخر

name, age, country = "Ahmed", 25, "Saudi Arabia"

print(name)
print(age)
print(country)

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


تبديل قيم المتغيرات باستخدام Python Code

من أشهر الأمثلة على قوة Python في التعامل مع المتغيرات إمكانية تبديل قيم متغيرين دون الحاجة إلى إنشاء متغير مؤقت.

a = 10
b = 20

a, b = b, a

print(a)
print(b)

بعد تنفيذ الكود ستكون قيمة a هي 20 وقيمة b هي 10.

هذا الأسلوب يعتمد أيضًا على ميزة Multiple Assignment ويدخل ضمن الأساليب التي تجعل كتابة python code أكثر اختصارًا.


الحصول على أول وآخر عنصر في القائمة

إذا كنت تحتاج إلى الحصول على أول وآخر عنصر من القائمة، يمكنك استخدام الفهرسة العادية في Python:

listData = [15,20,23,1,78,156,5,9]

first = listData[0]
last = listData[-1]

print(first)
print(last)

يبدأ ترقيم عناصر القائمة من الصفر، لذلك يمثل 0 أول عنصر، بينما يمثل -1 آخر عنصر في القائمة.

لماذا نستخدم -1؟

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

  • -1 → آخر عنصر.
  • -2 → العنصر قبل الأخير.
  • -3 → العنصر الثالث من النهاية.

عكس عناصر القائمة

يمكنك عكس ترتيب عناصر القائمة بسهولة باستخدام طريقة reverse() أو باستخدام slicing.

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

listData.reverse()

print(listData)

ويمكنك أيضًا إنشاء نسخة معكوسة باستخدام:

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

reversedList = listData[::-1]

print(reversedList)

الطريقة الثانية مفيدة عندما تريد الاحتفاظ بالقائمة الأصلية دون تعديلها.


استخراج جزء من القائمة باستخدام Slicing

تعتبر تقنية Slicing من أهم الأدوات التي يجب أن يتعلمها أي شخص يريد إتقان Python، لأنها تسمح باستخراج جزء معين من القائمة بسهولة.

listData = [10, 20, 30, 40, 50, 60]

print(listData[1:4])

سيقوم الكود باستخراج العناصر من الفهرس 1 وحتى قبل الفهرس 4.

كما يمكنك استخدام خطوة معينة:

print(listData[::2])

وهذا يعني الحصول على العناصر بفاصل عنصر واحد بين كل عنصر والآخر.


معرفة عدد عناصر القائمة

لمعرفة عدد العناصر الموجودة داخل أي قائمة، يمكنك استخدام الدالة len().

listData = [15,20,23,1,78,156,5,9]

print(len(listData))

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


البحث عن عنصر داخل القائمة

يمكنك استخدام العامل in لمعرفة ما إذا كان عنصر معين موجودًا داخل القائمة.

listData = [10, 20, 30, 40, 50]

if 30 in listData:
    print("Element found")
else:
    print("Element not found")

هذه الطريقة بسيطة ومفيدة جدًا عند التعامل مع بيانات المستخدم أو التحقق من وجود قيمة قبل تنفيذ عملية معينة.


استخراج أكبر وأصغر قيمة مباشرة

إذا كنت تحتاج إلى قيمة واحدة فقط، يمكنك استخدام الدالتين max() وmin() بدلًا من استخدام heapq.

listData = [15,20,23,1,78,156,5,9]

print("Maximum:", max(listData))
print("Minimum:", min(listData))

يعتبر هذا الأسلوب مناسبًا عندما تحتاج فقط إلى معرفة أكبر أو أصغر قيمة، بينما تكون heapq.nlargest() وheapq.nsmallest() مفيدة عندما تحتاج إلى عدة قيم.


مميزات استخدام هذه الأكواد

الأمثلة السابقة ليست مجرد أكواد مختصرة، بل تمثل مجموعة من الأدوات والأساليب التي ستستخدمها بشكل متكرر أثناء تطوير تطبيقات Python.

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

أخطاء يجب الانتباه إليها عند التعامل مع القوائم

الوصول إلى فهرس غير موجود

من الأخطاء الشائعة محاولة الوصول إلى عنصر غير موجود داخل القائمة، مما يؤدي إلى ظهور خطأ IndexError.

listData = [10, 20, 30]

print(listData[5])

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

عدم تطابق عدد المتغيرات

عند استخدام Unpacking يجب الانتباه إلى عدد العناصر والمتغيرات، لأن عدم التطابق قد يؤدي إلى ظهور خطأ.

a, b, c = [1, 2, 3]

الكود السابق صحيح لأن عدد المتغيرات يساوي عدد العناصر، بينما يمكن استخدام * عندما تريد جمع عدد متغير من العناصر.


⚖️ المميزات والعيوب

✔️ المميزات:

  • كود نظيف ومختصر.
  • سهولة التعامل مع القوائم.
  • تقليل التكرار في الكود.
  • مناسب للمشاريع الصغيرة والكبيرة.
  • يوفر العديد من الأدوات الجاهزة.
  • يساعد على كتابة Python Code بطريقة احترافية.

❌ العيوب:

  • بعض الأساليب قد تكون غير مفهومة للمبتدئين في البداية.
  • استخدام Unpacking بشكل خاطئ قد يؤدي إلى أخطاء.
  • يحتاج المبرمج إلى فهم الفهارس وSlicing بشكل جيد.

الخلاصة

تعلم python code الخاص بالتعامل مع القوائم يمنحك أساسًا قويًا في لغة Python، خصوصًا أن القوائم تُستخدم في عدد كبير من التطبيقات والمشاريع البرمجية.

تعرفنا خلال المقال على كيفية استخراج أكبر وأصغر العناصر باستخدام heapq، وطباعة عناصر القائمة باستخدام Unpacking، واستخراج العناصر الوسطى، وتعيين عدة متغيرات في سطر واحد، بالإضافة إلى تبديل القيم واستخدام Slicing والبحث داخل القوائم.

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


شرح مكتبة Safe Image لفلترة الصور الحساسة بالذكاء الاصطناعي
شاهد أيضًا
مقالات ذات صلة

🚫 مانع الإعلانات مفعل

يجب إيقاف مانع الإعلانات لاستكمال تصفح الموقع