الدليل الشامل لقوائم ومجموعات Python

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

قوائم بايثون

القوائم عبارة عن تسلسلات قابلة للتغيير يمكنها تخزين مجموعة متنوعة من أنواع البيانات. يمكنك تعديل القائمة بعد إنشائها، مما يجعلها بنية بيانات متعددة الاستخدامات للعديد من مهام البرمجة.

إنشاء القوائم

# Creating a list
fruits = ["apple", "banana", "cherry"]
numbers = [1, 2, 3, 4, 5]
mixed_list = [1, "banana", 3.14, True]

الوصول إلى عناصر القائمة

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

# Accessing elements
first_fruit = fruits[0]  # "apple"
last_number = numbers[-1]  # 5

تعديل القوائم

يمكن تعديل القوائم عن طريق تغيير العناصر، أو إضافة عناصر جديدة، أو إزالة العناصر الموجودة.

# Modifying lists
fruits[1] = "blueberry"  # Change "banana" to "blueberry"
fruits.append("orange")  # Add a new item
fruits.remove("apple")  # Remove "apple"

طرق القائمة الشائعة

  • append() - إضافة عنصر إلى نهاية القائمة
  • extend() - إضافة جميع العناصر من قائمة أخرى
  • insert() - إدراج عنصر في فهرس محدد
  • pop() - يقوم بإزالة عنصر وإرجاعه عند مؤشر معين
  • sort() - فرز القائمة بترتيب تصاعدي
  • reverse() - يعكس ترتيب القائمة

مجموعات بايثون

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

إنشاء مجموعات

# Creating a tuple
coordinates = (10, 20)
person = ("Alice", 30, "New York")
single_element_tuple = (42,)  # Note the comma

الوصول إلى عناصر المجموعة

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

# Accessing elements
x_coordinate = coordinates[0]  # 10
person_name = person[0]  # "Alice"

العمل مع المجموعات

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

# Concatenating and repeating tuples
numbers = (1, 2, 3)
more_numbers = (4, 5, 6)
combined = numbers + more_numbers  # (1, 2, 3, 4, 5, 6)
repeated = numbers * 3  # (1, 2, 3, 1, 2, 3, 1, 2, 3)

عمليات التوبل المشتركة

  • count() - إرجاع عدد مرات ظهور القيمة
  • index() - إرجاع مؤشر أول ظهور للقيمة

القوائم مقابل المجموعات

فيما يلي بعض الاختلافات الرئيسية بين القوائم والمجموعات:

  • قابلية التغيير: القوائم قابلة للتغيير؛ أما المجموعات فهي غير قابلة للتغيير.
  • التركيب: تستخدم القوائم أقواسًا مربعة []، بينما تستخدم الثنائيات الأقواس ().
  • الأداء: تكون العناصر المنسوخة أسرع من القوائم بشكل عام بسبب عدم قابليتها للتغيير.
  • حالة الاستخدام: استخدم القوائم عندما تحتاج إلى مجموعة قابلة للتغيير؛ استخدم المجموعات عندما تحتاج إلى مجموعة غير قابلة للتغيير.

خاتمة

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