כיצד למיין רשימות ומילון ב-Python
מיון הוא פעולה בסיסית בתכנות, המאפשרת לך לארגן נתונים בסדר רצוי. Python מספקת כלים חזקים למיון רשימות ומילונים, מה שמקל על מניפולציה יעילה של נתונים. במאמר זה, נחקור כיצד למיין גם רשימות וגם מילונים ב-Python, כולל שיטות ודוגמאות שונות.
מיון רשימות
רשימות הן אחד ממבני הנתונים הנפוצים ביותר ב- Python. ניתן למיין רשימות באמצעות השיטה המובנית sort()
או הפונקציה sorted()
. כך פועלת כל שיטה:
שימוש ב-sort()
השיטה sort()
ממיין רשימה במקום, כלומר משנה את הרשימה המקורית ולא מחזירה רשימה חדשה. כברירת מחדל, הוא ממיין בסדר עולה.
# Example: Sorting a list in ascending order
numbers = [4, 2, 9, 1, 5]
numbers.sort()
print(numbers) # Output: [1, 2, 4, 5, 9]
# Example: Sorting a list in descending order
numbers = [4, 2, 9, 1, 5]
numbers.sort(reverse=True)
print(numbers) # Output: [9, 5, 4, 2, 1]
בדוגמאות למעלה, השיטה sort()
ממיין את הרשימה numbers
תחילה בסדר עולה ולאחר מכן בסדר יורד באמצעות הפרמטר reverse=True
.
שימוש ב-sorted()
הפונקציה sorted()
מחזירה רשימה ממוינת חדשה ואינה משנה את הרשימה המקורית. זה גם מאפשר לך לציין את סדר המיון עם הפרמטר reverse
.
# Example: Using sorted() to get a new sorted list
numbers = [4, 2, 9, 1, 5]
sorted_numbers = sorted(numbers)
print(sorted_numbers) # Output: [1, 2, 4, 5, 9]
print(numbers) # Output: [4, 2, 9, 1, 5] (original list is unchanged)
# Example: Using sorted() to get a new sorted list in descending order
sorted_numbers_desc = sorted(numbers, reverse=True)
print(sorted_numbers_desc) # Output: [9, 5, 4, 2, 1]
כאן, sorted()
מחזיר רשימה חדשה sorted_numbers
מבלי לשנות את הרשימה המקורית של numbers
. ניתן גם למיין בסדר יורד עם הפרמטר reverse=True
.
מיון מילונים
מיון מילונים כולל מיון המילון לפי מפתחות או ערכים. שלא כמו רשימות, מילונים מטבעם אינם מסודרים עד Python 3.7, שם הם התחילו לשמר סדר הכנסה. כך תוכל למיין מילונים:
מיון לפי מפתחות
כדי למיין מילון לפי המקשים שלו, השתמש בפונקציה sorted()
יחד עם הבנת מילון או לולאות.
# Example: Sorting a dictionary by keys
data = {'banana': 3, 'apple': 4, 'orange': 2}
sorted_by_keys = {key: data[key] for key in sorted(data)}
print(sorted_by_keys) # Output: {'apple': 4, 'banana': 3, 'orange': 2}
בדוגמה זו, המילון data
ממוין לפי המפתחות שלו, וכתוצאה מכך מילון חדש ממוין_לפי_מפתחות
שבו המפתחות נמצאים בסדר עולה.
מיון לפי ערכים
כדי למיין מילון לפי הערכים שלו, אתה יכול להשתמש בפונקציה sorted()
על פריטי המילון ולאחר מכן ליצור מילון חדש.
# Example: Sorting a dictionary by values
data = {'banana': 3, 'apple': 4, 'orange': 2}
sorted_by_values = dict(sorted(data.items(), key=lambda item: item[1]))
print(sorted_by_values) # Output: {'orange': 2, 'banana': 3, 'apple': 4}
כאן, data.items()
מחזיר רשימה של tuples, ו-sorted()
משמש כדי למיין tuples אלה לפי האלמנט השני (הערך) באמצעות פונקציית lambda. התוצאה היא מילון חדש ממוין_לפי_ערכים
עם ערכים בסדר עולה.
מַסְקָנָה
מיון רשימות ומילון ב-Python הוא פשוט ועוצמתי, הודות לשיטת sort()
ופונקציית sorted()
לרשימות, וטכניקות שונות למילונים. הבנת השיטות הללו תעזור לך לנהל ולנתח נתונים בצורה יעילה יותר. נסה עם טכניקות המיון הללו כדי לראות כיצד ניתן ליישם אותן בפרויקטים שלך!