القوائم في بايثون
في هذه المقالة، سنشرح القوائم في بايثون۔
يمكنك تعلم العديد من العمليات على القوائم وفهم القوائم باستخدام أمثلة على الكود.۔
YouTube Video
القوائم في بايثون
في بايثون، بنية البيانات التي يُشار إليها عادةً بالمصفوفة يتم تنفيذها عادةً كـ 'قائمة'.۔ القوائم في بايثون مرنة جدًا وتسمح بتنفيذ العمليات التالية:۔
إنشاء قائمة
1# Create an empty list
2my_list = []
3print(my_list)
4
5# Create a list with elements
6my_list = [1, 2, 3, 4, 5]
7print(my_list)
- يمكنك إنشاء قائمة فارغة أو قائمة تحتوي على عناصر ابتدائية محددة۔
الوصول إلى عناصر القائمة وتعديلها
1my_list = [1, 2, 3, 4, 5]
2print(my_list) # [1, 2, 3, 4, 5]
3
4element = my_list[0] # Get the element at index 0
5print(element) # 1
6
7my_list[1] = 10 # Change the element at index 1 to 10
8print(my_list) # [1, 10, 3, 4, 5]
- يمكن الوصول إلى عناصر القائمة أو تعديلها عن طريق تحديد الفهرس الخاص بها۔
الحصول على طول القائمة
1my_list = [1, 2, 3, 4, 5]
2
3length = len(my_list)
4print(my_list)
5print(length)
- باستخدام دالة
len()
، يمكنك الحصول على عدد العناصر۔
إضافة وإدراج عناصر داخل القائمة
1my_list = [1, 2, 3, 4, 5]
2
3my_list.append(6)
4print(my_list)
- باستخدام الدالة
append()
، يمكنك إضافة عنصر إلى نهاية القائمة۔
1my_list = [1, 2, 3, 4, 5]
2
3my_list.insert(2, "A") # Insert "A" at index 2
4print(my_list)
- باستخدام الدالة
insert()
، يمكنك إدراج عنصر في أي موضع داخل القائمة۔
إزالة عناصر من قائمة
1my_list = [1, 2, 3, 4, 5]
2
3del my_list[2] # Delete the element at index 2
4print(my_list)
5
6removed_element = my_list.pop(0) # Delete and return the element at index 0
7print(removed_element)
8print(my_list)
- باستخدام جملة
del
أو دالةpop()
، يمكنك إزالة عنصر في موضع محدد۔ تعيد دالةpop()
العنصر الذي تمت إزالته۔
1my_list = [1, 2, 3, 4, 5]
2
3my_list.remove(5) # Remove the first occurrence of 5 from the list
4print(my_list)
- باستخدام دالة
remove()
، يمكنك حذف أول ظهور لقيمة محددة۔
تجزئة القوائم
1my_list = [1, 2, 3, 4, 5]
2
3print(my_list[1:3]) # [2, 3]
4print(my_list[:3]) # [1, 2, 3]
5print(my_list[2:]) # [3, 4, 5]
6print(my_list[:]) # [1, 2, 3, 4, 5]
- بنية التقطيع
[start:end]
تقوم بجلب العناصر منstart
إلىend - 1
۔ يمكنك أيضًا تجاهل كل منstart
أوend
۔
فرز القائمة
1my_list = [2, 1, 5, 4, 3]
2print(my_list) # [2, 1, 5, 4, 3]
3
4my_list.sort() # Sort in ascending order (modifies the list)
5print(my_list) # [1, 2, 3, 4, 5]
6
7my_list.sort(reverse=True) # Sort in descending order
8print(my_list) # [5, 4, 3, 2, 1]
- يمكن أن تقوم دالة
sort()
بفرز القائمة بترتيب تصاعدي أو تنازلي۔
1my_list = [3, 1, 4, 2]
2sorted_list = sorted(my_list)
3print(my_list) # [3, 1, 4, 2]
4print(sorted_list) # [1, 2, 3, 4]
- تتيح لك دالة
sorted()
إنشاء قائمة جديدة مرتبة دون تعديل القائمة الأصلية۔
إنشاء قائمة معكوسة
1my_list = [1, 2, 3, 4, 5]
2
3my_list.reverse()
4print(my_list)
- يمكن لدالة
reverse()
عكس ترتيب العناصر في القائمة۔
فهم القوائم
في بايثون، يمكنك استخدام تركيبة list comprehension القوية لإنشاء القوائم بشكل مختصر۔ تسمح لك تركيبات القوائم بكتابة عملية إنشاء قوائم جديدة باستخدام حلقات for في سطر واحد فقط۔ يمكنك أيضًا استخدام الشروط لاستخراج عناصر محددة فقط۔
1# Generate squares of numbers from 0 to 9
2squares = [x**2 for x in range(10)]
3print(squares) # [0, 1, 4, 9, 16, 25, 36, 49, 64, 81]
4
5# Use a condition to extract squares of even numbers only
6even_squares = [x**2 for x in range(10) if x % 2 == 0]
7print(even_squares) # [0, 4, 16, 36, 64]
8
9# Store either the square or the original number based on a condition
10squares_or_original = [x**2 if x % 2 == 0 else x for x in range(10)]
11print(squares_or_original)
12# Output: [0, 1, 4, 3, 16, 5, 36, 7, 64, 9]
- باستخدام تركيبات القوائم، يمكنك إنشاء قوائم جديدة بشكل مختصر باستخدام الحلقات والشروط۔ باستخدام
if
وif-else
، يمكنك إنشاء استيعابات القوائم التي تستخرج عناصر أو تولد قيم مختلفة بناءً على الشروط۔
دمج القوائم
1# Concatenate two lists using the + operator
2a = [1, 2, 3]
3b = [4, 5, 6]
4combined = a + b
5print(combined) # [1, 2, 3, 4, 5, 6]
6
7# Extend an existing list with another list
8a = [1, 2, 3]
9b = [4, 5, 6]
10a.extend(b)
11print(a) # [1, 2, 3, 4, 5, 6]
12
13# Concatenate multiple lists using unpacking (*)
14a = [1, 2, 3]
15b = [4, 5, 6]
16c = [7, 8, 9]
17merged = [*a, *b, *c]
18print(merged) # [1, 2, 3, 4, 5, 6, 7, 8, 9]
- في بايثون، يمكنك دمج القوائم باستخدام عامل الجمع
+
، أو الطريقةextend()
، أو بناء الجملة لفك التجميع (*
)۔ من الشائع استخدام+
أو*
عند إنشاء قائمة جديدة، وextend()
عند تحديث قائمة موجودة۔
الملخص
القوائم هي هيكل بيانات أساسي في بايثون وتستخدم في العديد من المواقف۔ هناك العديد من الميزات المرنة والمفيدة، وإتقانها يجعل البرمجة أكثر كفاءة۔
يمكنك متابعة المقالة أعلاه باستخدام Visual Studio Code على قناتنا على YouTube.۔ يرجى التحقق من القناة على YouTube أيضًا.۔