دليل شامل لهياكل البيانات في بايثون

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

قوائم بايثون

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

  • الإنشاء: يتم إنشاء القوائم باستخدام أقواس مربعة مع فصل العناصر بفاصلات.
  • الوصول: يمكن الوصول إلى العناصر الموجودة في القائمة باستخدام الفهرسة القائمة على الصفر.
  • التلاعب: تدعم القوائم طرقًا مختلفة مثل append() و remove() و sort().
# Creating a list
my_list = [1, 2, 3, 4, 5]

# Accessing an element
print(my_list[0])  # Output: 1

# Adding an element
my_list.append(6)

# Removing an element
my_list.remove(3)

# Sorting the list
my_list.sort()

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

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

  • الإنشاء: يتم إنشاء العناصر باستخدام أقواس مع فصل العناصر بفاصلات.
  • الوصول: مثل القوائم، يتم الوصول إلى العناصر باستخدام الفهرسة.
  • حالة الاستخدام: غالبًا ما تُستخدم العناصر الثنائية لمجموعات ثابتة من العناصر أو كمفاتيح في القواميس.
# Creating a tuple
my_tuple = (1, 2, 3, 4, 5)

# Accessing an element
print(my_tuple[0])  # Output: 1

# Tuples are immutable, so the following would raise an error
# my_tuple[0] = 10

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

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

  • الإنشاء: يتم إنشاء المجموعات باستخدام الأقواس المتعرجة أو المنشئ set().
  • العمليات: مجموعات تدعم العمليات مثل الاتحاد، والتقاطع، والفرق.
  • التفرد: يقوم تلقائيًا بإزالة العناصر المكررة.
# Creating a set
my_set = {1, 2, 3, 4, 5}

# Adding an element
my_set.add(6)

# Removing an element
my_set.remove(3)

# Set operations
another_set = {4, 5, 6, 7}
print(my_set.union(another_set))  # Output: {1, 2, 4, 5, 6, 7}

قواميس بايثون

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

  • الإنشاء: يتم إنشاء القواميس باستخدام أقواس متعرجة مع أزواج مفتاح-قيمة مفصولة بفاصلات.
  • الوصول: يتم الوصول إلى القيم باستخدام المفاتيح، ويمكن إضافة العناصر أو تعديلها.
  • الأساليب: تدعم القواميس أساليب مثل keys()، و values()، و items().
# Creating a dictionary
my_dict = {'name': 'Alice', 'age': 25, 'city': 'New York'}

# Accessing a value
print(my_dict['name'])  # Output: Alice

# Adding a key-value pair
my_dict['email'] = 'alice@example.com'

# Removing a key-value pair
del my_dict['age']

# Dictionary methods
print(my_dict.keys())  # Output: dict_keys(['name', 'city', 'email'])

خاتمة

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