רשימות בפייתון
במאמר זה נסביר על רשימות בפייתון.
תוכלו ללמוד על פעולות שונות על רשימות והבנת רשימות יחד עם דוגמאות קוד.
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()
יכולה להפוך את סדר האיברים ברשימה.
הבנת רשימות
ב-Python ניתן להשתמש בתחביר יצירת רשימות (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]
- ב־Python, ניתן לשרשר רשימות באמצעות האופרטור
+
, המתודהextend()
, או תחביר הפריסה (*
). נהוג להשתמש ב־+
או*
כאשר יוצרים רשימה חדשה, וב־extend()
כאשר מעדכנים רשימה קיימת.
סיכום
רשימות הן מבנה נתונים בסיסי בפייתון ומשמשות במצבים רבים. קיימות תכונות רבות גמישות ושימושיות, ושליטה בהן הופכת את התכנות ליעיל יותר.
תוכלו לעקוב אחר המאמר שלמעלה באמצעות Visual Studio Code בערוץ היוטיוב שלנו. נא לבדוק גם את ערוץ היוטיוב.