רשימות ( רשימה ) ב- Python. רשימת פונקציות ושיטות

בתכנות, רשימות הן אולי מבנה נתונים שימושי כמו מערכים. מהן רשימות, איך יוצרים אותן? איך עובדים עם רשימות ב- Python? תלמד על כך מהמאמר שלנו.

מהן רשימות ב- Python?

רשימות ( רשימה ) ב- Python. רשימת פונקציות ושיטות
סוגי נתונים של פייתון: רשימות

ניתן לזהות רשימות באופן חלקי עם מערכים, אך ההבדל והיתרון של רשימות (אחרת הן נקראות גם רשימות) הוא בכך שהן יכולות לשלב סוגי נתונים שונים. כלומר, הרישום פותח אפשרויות נוספות לאחסון כל רצף של אובייקטים. משתנה, הנקרא רשימה, מכיל הפניה למבנה בזיכרון המכיל הפניות למבנים חלופיים.

רשימה ב-Python היא אוסף מסודר של אובייקטים מסוגים מעורבים הניתנים לשינוי ואשר האובייקטים שלהם עשויים להיות שונים.

מה זה אומר? בואו נסתכל על ההגדרה בפירוט.

ניתן לשנות את גודל הרישום, להקטין אותו, להוסיף לו שורות חדשות. ניתן גם לשנות את כל המבנה של הרשימה. זכור שבכל פעם שמשתמשים בשיטה ברשימה, הרשימה המקורית משתנה, לא העותק.

לבהירות רבה יותר, אתה יכול לחשוב על רישום ב-Python כעל רשימה של מוצרים שצריך לקנות בחנות. אם, בעת ביצוע תוכנית קניות, כל הפריטים הדרושים ממוקמים אחד מתחת לשני, ולכל אחד מהם יש שורה משלו, הרישום ב-Python מכיל את כל האלמנטים מופרדים בפסיקים ובסוגריים מרובעים כדי ש-Python יוכל להבין את זה. רשימה מסומנת כאן. האלמנטים מוקפים במרכאות. זהו תנאי חובה, כי כל אלמנט הוא שורה נפרדת.

דרכים ליצירת רשימה

נעבור לדוגמא הקלאסית, בואו ניצור רשימה שבה נשתמש ונשנה בעתיד. ישנן מספר דרכים ליצור רישומים.

אחד מהם הוא האפליקציה רשימת פונקציות מובנית ( ). לשם כך, עליך לעבד כל אובייקט שניתן לבצע איטרציה (מחרוזת, טופל או רשימה קיימת). במקרה זה, מחרוזת.

זה מה שקורה בסופו של דבר:

>>> list('list') ['c', 'n', 'i', 'c', 'o', 'to']

הדוגמה השנייה מראה שרשימות יכולות להכיל מספר בלתי מוגבל של אובייקטים שונים מאוד. כמו כן, הרישום יכול להישאר ריק.

>>> s = [] # רשימה ריקה >>> l = ['s', 'p', ['isok'], 2] >>> s [] >>> l ['s', 'p' , ['isok'], 2]

הדרך הבאה, השלישית, ליצירת רישומים היא מה שנקרא מחולל רישום.

מחולל הרישום הוא מבנה תחבירי ליצירת רישומים. זה דומה ללולאת for.

>>> c = [c * 3 עבור c ב'רשימה'] >>> c ['lll', 'iii', 'sss', 'ttt']

זה יכול לשמש גם ליצירת מבנים נפחיים יותר:

>>> c = [c * 3 עבור c ב'list' if c != 'i'] >>> c ['lll', 'sss', 'ttt'] >>> c = [c + d for c ב-'list' if c != 'i' עבור d ב-'spam' if d != 'a'] >>> c ['ls', 'lp', 'lm', 'ss', 'sp' , 'sm', 'ts', 'tp', 'tm']

עם זאת, שיטת הדור הזו לא תמיד יעילה בעת הידור של מספר רישומים. לכן, מומלץ להשתמש בלולאת for כדי ליצור רישומים.

אם אתה צריך להתייחס לרכיב כלשהו מהרשימה, נעשה שימוש באינדקסים. לכל אלמנט יש אינדקס משלו.

האינדקס הוא מספר האלמנט ברשימה.

אם ברצונך למלא את הרישום באלמנטים חוזרים, זהים, נעשה שימוש בסמל *. לדוגמה, עליך להוסיף שלושה מספרים זהים לרישום: [100] * 3.

פונקציות רישום

פונקציות - זה אולי היתרון העיקרי של Python על פני שפות תכנות אחרות. ניתן להחיל פונקציות מובנות בסיסיות על רשימות.

שקול את הפופולרי שבהם:

  • list(range()) - אם המשימה היא ליצור רשימה רציפה, אזי נעשה שימוש בפונקציית הטווח. לפונקציה זו יש את הצורות הבאות:
  1. טווח (סוף). הוא משמש כאשר יש צורך ליצור רישום מאפס למספר סופי.
  2. טווח (התחלה, סוף). הן מספרי ההתחלה והסיום מצוינים.
  3. טווח (התחלה, סוף, שלב). פרמטר הצעד מציין את מאפיין הבחירה. לדוגמה, אם אתה צריך לבחור כל מספר חמישי מרצף מ-1 עד 21, הרישום המתקבל ייראה כך: [10,15, 20].

פונקציית הטווח יכולה להפחית משמעותית את כמות הקוד.

  • פשתן (רשימה) - מאפשר לך לגלות כמה אלמנטים יש ברשימה.
  • sorted(list, [key]) – ממיין את האובייקטים ברשימה בסדר עולה.
  • מקסימום (רשימה) - מחזיר את האלמנט הגדול ביותר.
  • דקות (רשימה) – פונקציה הפוכה – מאפשרת להחזיר את האלמנט עם הערך המינימלי.

אתה יכול גם להשתמש בפונקציות מובנות אחרות:

  • רשימה (טופל) – ממירה אובייקט טופל לרשימה.
  • sum(list) - מסכם את כל האלמנטים ברשימה אם כל הערכים הם מספרים, חל גם על מספרים שלמים וגם על עשרונים. עם זאת, היא לא תמיד מבינה את זה נכון. אם יש אלמנט לא מספרי ברשימה, הפונקציה תציג שגיאה: "TypeError: סוג אופרנד לא נתמך עבור +: 'int' ו-'str'".

שיטות רישום

רשימות ( רשימה ) ב- Python. רשימת פונקציות ושיטות
רשימה של שיטות פייתון

בואו נחזור לרשימת הפריטים שלנו לקנייה בחנות ונקרא לזה רשימת קניות:

רשימת קניות = []

לאחר מכן, שקול את שיטות הרישום:

  • append(item) – בעזרתו תוכלו להוסיף אלמנט לרשימה. במקרה זה, האלמנט החדש יהיה בסוף.

בואו נמלא את הרישום החדש שלנו במוצרים הנכונים:

shoplist.append(bread)

shoplist.append(מייל)

  • רשימה.לְהַאֲרִיך(A) - מוסיף "רשימה לרשימה". תכונה זו חוסכת זמן מכיוון שאתה יכול להוסיף מספר פריטים בו זמנית. נניח שכבר יש לנו רשימה של פירות, אנחנו צריכים להוסיף אותם לרשימה הראשית.

shoplist.extend(fruits)

  • insert(אינדקס, פריט) – מכניס לאלמנט עם האינדקס שצוין את הערך שצוין לפני האינדקס שצוין.
  • lcount(item) – מציג את מספר החזרות של האלמנט.
  • רשימה.לְהַסִיר(פריט) היא הפונקציה ההפוכה רשימה.לצרף (x). זה יכול לשמש כדי להסיר כל אלמנט. אם הפריט שנבחר אינו ברשימה, מדווחת שגיאה.
  • pop([אינדקס]) – מסיר את הרכיב שנבחר ומחזיר אותו באותו אופן. אם האלמנט לא צוין, האלמנט האחרון יוסר מהרשימה.
  • מיון ([מפתח]) – מכניס את האלמנטים לרישום בסדר עולה, אך ניתן גם לציין פונקציה.
  • אינדקס (פריט) – מציג את האינדקס של האלמנט הראשון שנבחר.
  • אתה יכול להרחיב את הרשימה, כלומר לשקף את כל האלמנטים שלה, באמצעות השיטה הפוך (רשימה). היסוד האחרון הופך לראשון, היסוד הלפני אחרון הופך לשני, וכן הלאה.
  • עותק של הרשימה נוצר עם הפקודה העתק (רשימה).
  • deepcopy (רשימה) - העתקה עמוקה.
  • הסר את כל רכיבי הרישום באמצעות השיטה נקה רשימה).

ראוי לציין ששיטות רישום שונות משיטות מחרוזות בכך שהן משנות מיד את הרשימה, כלומר, אין צורך להחזיר את תוצאת הביצוע.

>>> l = [1, 2, 3, 5, 7] >>> l.sort() >>> l [1, 2, 3, 5, 7] >>> l = l.sort() > >> הדפס(ל) אין

להלן דוגמה לעבודה עם רשימות:

>>> a = [66.25, 333, 333, 1, 1234.5] >>> print(a.count(333), a.count(66.25), a.count('x')) 2 1 0 >>> a.insert(2, -1) >>> a.append(333) >>> a [66.25, 333, -1, 333, 1, 1234.5, 333] >>> a.index(333) 1 >> > a.remove(333) >>> a [66.25, -1, 333, 1, 1234.5, 333] >>> a.reverse() >>> a [333, 1234.5, 1, 333, -1, 66.25 ] >>> a.sort() >>> a [-1, 1, 66.25, 333, 333, 1234.5]

השאירו תגובה