logo

הזן רשימה ב- Python

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

מהי רשימה?

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

דוגמא:

 drivers = ['LEWIS', 'GEORGE', 'MAX', 'SEBASTIAN'] 

ה רשימה 'נהגים', הכולל את האלמנטים 'LEWIS', 'GEORGE', 'MAX', ו 'סבסטיאן', משמש באיור זה. רשימה יכולה לכלול ערכים מתוך מחרוזות, מספרים, ואפילו רשימות נוספות.

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

מקבל קלט

ישנן דרכים רבות לקבל קלט ב- Python. כמה מהם מוזכרים להלן

1. קלט():

משתמש ב-Python's פונקציית input(), אתה יכול לשלוח קלט משתמש לרשימה ולשמור אותה כמחרוזת. לאחר מכן, ניתן לעבד את הקלט ליצירת פורמט רשימה.

איך לעשות מחדש בפוטושופ

דוגמא:

 # Taking input as a string using input function input_str = input('Enter elements of the list separated by space: ') # Converting input string to a list of integers my_list = input_str.split() my_list = [int(num) for num in my_list] # Printing the list print('List:', my_list) 

תְפוּקָה:

 Enter elements of the list separated by space: 1 2 3 4 5 List: [1, 2, 3, 4, 5] 

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

לדוגמה, אם המשתמש מקליד '1 2 3 4 5', התוכנית תמיר את הקלט שלהם ל- רשימה [1, 2, 3, 4, 5] ולהדפיס אותו כתוצאה מכך.

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

מי המציא את בית הספר

2. שימוש ב-split() וב-map():

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

קיצורי דרך בלינוקס

דוגמא:

 # Taking input as a string and converting it to a list of integers using split and map input_str = input('Enter elements of the list separated by space: ') my_list = list(map(int, input_str.split())) # Printing the list print('List:', my_list) 

תְפוּקָה:

 Enter elements of the list separated by space: 1 2 3 4 5 List: [1, 2, 3, 4, 5] 

לְפַצֵל() היא שיטת מחרוזת מובנית ב- Python. הוא מפרק מחרוזת לרשימה של מחרוזות משנה באמצעות מפריד שכבר עבר כארגומנט. ה פונקציית split() מובנית עובד בצורה כזו שהוא מפריד את טקסט הקלט למספר קטעים התלויים בעיקר ברווח לבן (כגון כרטיסיות, רווחים, אוֹ דמות חדשה ) אם מפריד ספציפי אינו מוזכר בעת השימוש בקוד.

טקסט הקלט בדוגמה מחולק לחלקים המרכיבים שלו באמצעות input_str.split(). ה שיטת split() חציית מחרוזת הקלט בכל רווח, וכתוצאה מכך רשימה של מחרוזות משנה. לדוגמה, לְפַצֵל() יתחלק ['1', '2', '3', '4', '5'] אם המשתמש נכנס '1 2 3 4 5'.

התוצאות של החלת פונקציה מוגדרת על כל פריט ב-an ניתן לחזרה (כמו רשימה ) לאיטרטור מוחזרים על ידי פייתון שיטת map() המובנית. בדוגמה, ה פונקציית int() מוחל על כל רכיב של מחרוזת הקלט המחולקת באמצעות ה- שיטת map(int, input_str.split()).

ה שיטת int() ממירה מחרוזת המייצגת את an מספר שלם למספר שלם אמיתי. אנחנו ממפים int() לכל רכיב של מחרוזת הקלט המפוצלת כדי לקבל חדש ניתן לחזרה עם ערכי המספרים השלמים התואמים. ההצהרה map(int, ['1', '2', '3', '4', '5']) יגרור איטרטור עם ה מספרים שלמים [1, 2, 3, 4, 5].

3. שימוש בלולאה:

אתה יכול להשתמש ב- a לוּלָאָה לבקש מהמשתמש שוב ושוב קלט ולהוסיף כל ערך שהוזן לרשימה

דוגמא:

בניית אובונטו חיונית
 # input using a loop n = int(input('Enter the number of elements: ')) my_list = [] for i in range(n): element = input('Enter element {}: '.format(i+1)) my_list.append(element) # Printing the list print('List:', my_list) 

תְפוּקָה:

 Enter the number of elements: 4 Enter element 1: TESLA Enter element 2: FORD Enter element 3: FERRARI Enter element 4: MERCEDES List: ['TESLA','FORD','FERRARI', 'MERCEDES'] 

בדוגמה זו, המשתמש מתבקש להזין את מספר האלמנטים שהוא רוצה להזין. נגיד שהם נכנסים 4 . לאחר מכן, התוכנית נכנסת ל-a לוּלָאָה שחוזר על עצמו 4 פעמים באמצעות טווח(n). במהלך כל איטרציה, המשתמש מתבקש להזין אלמנט, החל מ- הזן אלמנט 1 : והגדלה עבור איטרציות עוקבות.

המשתמש נכנס 'TESLA', 'FORD', 'FERRARI', ו 'מרצדס' כמרכיבים המתאימים בדוגמה הקודמת. כל רכיב מצורף ל- רשימת_הרשימה שלי ניצול ה attach() טכניקה.

    אימות קלט:זה קריטי לקחת אימות קלט בחשבון בעת ​​עיבוד רשימת קלט. כדי להבטיח שהמשתמש מספק קלט מדויק, ייתכן שתרצה ליישם טיפול בשגיאות. לדוגמה, אתה יכול לקבוע אם הקלט הוא בפורמט הרצוי או טווח ובקש מהמשתמש להזין מחדש אם נמצא קלט לא חוקי.פיצול עם מפריד מותאם אישית:בעת פיצול מיתר, ה שיטת split() כברירת מחדל, משתמש בתווי רווח לבן כמפריד. ה שיטת split() מאפשר לך לתת תוחם מותאם אישית בתור אבל טיעון. לדוגמה, השתמש input_str.split(',') כדי לחלק קלט מופרד בפסיקים.טיפול בסוגי נתונים שונים:ייתכן שיהיה עליך לנהל מספר סוגי נתונים ברשימת הקלט בהתאם לצרכים שלך. כדי לשנות את סוגי הנתונים של רכיבי הקלט, השתמש בפעולות המרה מתאימות כמו int(), float(), או str(). בקשת אורך רשימה:תחילה תוכל לבקש מהמשתמש את מספר האלמנטים אם אתה רוצה קלט על אורך הרשימה. לאחר מכן, תוכל להקצות את המשאבים הנדרשים ולחזור על מספר הפעמים הדרוש כתוצאה מכך.עיצוב קלט:בהודעת ההנחיה, קחו בחשבון מתן מידע למשתמש על פורמט הקלט המיועד. בכך אתה עלול למנוע אי הבנות ולהבטיח שהמשתמש יזין את הקלט בצורה הנכונה.טיפול בשגיאות:כדי למנוע אי הבנות נוספות, עדיף לציין כראוי את פורמט נתוני הקלט בהודעת ההנחיה של המשתמש, כך שנוודא שהמשתמש יזין את הקלט בפורמט הנדרש.קבלת קלט רב-קו:ניתן להשתמש בלולאה כדי לקבל את רכיב הקלט עבור כל איטרציה אם המשתמש מעוניין לספק קלט עם מספר שורות. זה שימושי אם לנתוני הקלט יש מעברי שורות.
 my_list = [] print('Enter elements of the list my_list(press 'x' to finish):') while True: element = input() if element == 'x': break my_list.append(element) # Printing the list print('List:', my_list) 

תְפוּקָה:

 Enter elements of the listmy_list (press 'x' to finish): LAMBORGHINI FERRARI MERCEDES AMG X The list will be :['LAMBORGHINI', 'FERRARI', 'MERCEDES AMG']. 

סיכום

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

כמה ערים ארה"ב

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

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