"إذا أراد العامل أن يؤدي عمله بشكل جيد، فعليه أولاً أن يشحذ أدواته." - كونفوشيوس، "مختارات كونفوشيوس. لو لينجونج"
الصفحة الأمامية > برمجة > Tuples وقوائم Python نصائح لإعداد شهادة PCEP

Tuples وقوائم Python نصائح لإعداد شهادة PCEP

تم النشر بتاريخ 2024-11-08
تصفح:222

Python Tuples and Lists Tips for PCEP Certification Preparation

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

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

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

مثال على القائمة:

# creating a list of numbers
numbers = [1, 2, 3, 4, 5]
# modifying the list by changing the fourth element
numbers[3] = 10
print(numbers)
# output: [1, 2, 3, 10, 5]

مثال Tuple:

# creating a tuple of colors
colors = ("red", "green", "blue")
# trying to modify the tuple by changing the second element
colors[1] = "yellow" 
# this will result in an error as tuples are immutable

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

مثال على القائمة:

# creating a list of fruits
fruits = ["apple", "banana", "orange"]

مثال Tuple:

# creating a tuple of colors
colors = ("red", "green", "blue")

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

مثال على القائمة:

# adding a new fruit to the end of the list
fruits.append("mango")
print(fruits)
# output: ["apple", "banana", "orange", "mango"]

# removing a fruit from the list
fruits.remove("banana")
print(fruits)
# output: ["apple", "orange", "mango"]

مثال Tuple:

# trying to add a fruit to the end of the tuple
fruits.append("mango")
# this will result in an error as tuples are immutable

# trying to remove a fruit from the tuple
fruits.remove("banana")
# this will also result in an error

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

يمكنك اختبار اختلافات الأداء بين القوائم والصفوف باستخدام وحدة timeit في بايثون. فيما يلي مثال لمقارنة الوقت المستغرق للتكرار خلال قائمة ومجموعة مكونة من 10 عناصر:

# importing the timeit module
import timeit

# creating a list and a tuple with 10 elements
numbers_list = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
numbers_tuple = (1, 2, 3, 4, 5, 6, 7, 8, 9, 10)

# testing the time it takes to iterate through the list
list_time = timeit.timeit('for num in numbers_list: pass', globals=globals(), number=100000)
print("Time taken for list: ", list_time)
# output: Time taken for list: 0.01176179499915356 seconds

# testing the time it takes to iterate through the tuple
tuple_time = timeit.timeit('for num in numbers_tuple: pass', globals=globals(), number=100000)
print("Time taken for tuple: ", tuple_time)
# output: Time taken for tuple: 0.006707087000323646 seconds

كما ترون، التكرار من خلال الصف أسرع قليلاً من التكرار من خلال القائمة.

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

مثال على القائمة:

# creating a list of groceries
grocery_list = ["milk", "bread", "eggs", "chicken"]
# adding a new item to the grocery list
grocery_list.append("bananas")

مثال Tuple:

# creating a tuple of weekdays
weekdays = ("Monday", "Tuesday", "Wednesday", "Thursday", "Friday")
# trying to add a new day to the tuple
weekdays.append("Saturday")
# this will result in an error as tuples cannot be modified after creation

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

يمكنك استخدام وحدة sys في Python للتحقق من استخدام الذاكرة للمتغيرات. فيما يلي مثال لمقارنة استخدام الذاكرة لقائمة ومجموعة تحتوي على مليون عنصر:

# importing the sys module
import sys

# creating a list with one million elements
numbers_list = list(range(1000000))
# checking the memory usage of the list
list_memory = sys.getsizeof(numbers_list)
print("Memory usage for list: ", list_memory)
# output: Memory usage for list:  9000112 bytes

# creating a tuple with one million elements
numbers_tuple = tuple(range(1000000))
# checking the memory usage of the tuple
tuple_memory = sys.getsizeof(numbers_tuple)
print("Memory usage for tuple: ", tuple_memory)
# output: Memory usage for tuple: 4000072 bytes

يمكنك أن ترى أن المجموعات تستهلك ذاكرة أقل مقارنة بالقوائم.

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

مثال على القائمة:

# creating a list of numbers
numbers = [1, 2, 3, 4, 5]
# iterating through the list and checking if a number is present
for num in numbers:
    if num == 3:
        print("Number 3 is present in the list")
# output: Number 3 is present in the list

مثال Tuple:

# creating a tuple of colors
colors = ("red", "green", "blue")
# iterating through the tuple and checking if a color is present
for color in colors:
    if color == "yellow":
        print("Yellow is one of the colors in the tuple")
# this will not print anything as yellow is not present in the tuple

8. كن على دراية بالوظائف والعمليات المضمنة
في حين أن القوائم تحتوي على طرق مدمجة أكثر مقارنة بالصفوف، فإن كلا بنيات البيانات لديها مجموعة من الوظائف والعوامل المضمنة التي يجب أن تكون على دراية بها في اختبار PCEP. تتضمن هذه الوظائف وظائف مثل len() وmax() وmin()، بالإضافة إلى عوامل التشغيل مثل in وnot in للتحقق مما إذا كان العنصر موجودًا في قائمة أو صف.

مثال على القائمة:

# creating a list of even numbers
numbers = [2, 4, 6, 8, 10]
# using the len() function to get the length of the list
print("Length of the list: ", len(numbers))
# output: Length of the list: 5
# using the in and not in operators to check if a number is present in the list
print(12 in numbers)
# output: False
print(5 not in numbers)
# output: True

مثال Tuple:

# creating a tuple of colors
colors = ("red", "green", "blue")
# using the max() function to get the maximum element in the tuple
print("Maximum color: ", max(colors))
# output: Maximum color: red
# using the in and not in operators to check if a color is present in the tuple
print("yellow" in colors)
# output: False
print("green" not in colors)
# output: False

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

بيان الافراج تم إعادة إنتاج هذه المقالة على: https://dev.to/myexamcloud/python-tuples-and-lists-tips-for-pcep-certification-preparation-2gkf?1 إذا كان هناك أي انتهاك، يرجى الاتصال بـ [email protected] لحذفه
أحدث البرنامج التعليمي أكثر>

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

Copyright© 2022 湘ICP备2022001581号-3