תרגיל 47 - חוטש

היי שלום :slight_smile:
בתרגיל אנו מתבקשים לקבל קלט בצורה של רשימת רשימות, אבל כאשר אני מבקשת מהמשתמש את אותה רשימה, אני מקבלת אותה מטיפוס str, לא משנה איך אני “מנסחת” אותה (עם סוגריים מרובעים יחידים, כפולים…).
גם “לכפות” על ה-input שלי להיות מטיפוס list לא מוביל לתוצאה הרצויה. להלן ה-input:


והתוצאה המתקבלת בהרצת השורות:

(במקרה שכפיתי עליו להיות list הוא מחזיר את ה-type כ-list אבל האאוטפוט נותר זהה ולא נותן לי את כל האיבר הנדרש.
לעומת זאת, אם אני נותנת לו את אותו ה-input מתוך הקוד ולא כ-input מהמשתמש, הוא יודע להבין שזהו list ולתת לי את האיבר הנכון.
אשמח לקבל הכוונה איך להבטיח שאכן ה-input מהמשתמש יתקבל כ-list
תודה!

היי,

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

2 לייקים

היי,
אני נתקל בבעיה כאשר אני מנסה להכניס כארגומנט לפונקצייה שכתבתי רשימת רשימות, אבל הפייתון מקפיץ שגיאה:
TypeError: ‘list’ object is not callable
למישהו יש רעיון איך להתמודד עם זה?
באופן כללי - האם יש הגבלה על הtypes כארגומנטים?
תודה

נשמע שניסית לקרוא למשהו שמוגדר כרשימה כאילו הוא פונקציה - למשל אם a = [1,2,3] שהיתה לך שורה a().
למיטב ידיעתי אין הגבלה על הטיפוסים של ארגומנטים.

2 לייקים

מודה שלא הצלחתי להבין. :frowning:

אכן אין הגבלה על טיפוסי ארגומנטים, כפי שאורפז אמרה.
היא גם זיהתה נכון את הבעיה: ניסית לקרוא למשתנה כלשהו שמכיל list. יש סיכוי שניסית לעשות slicing עם סוגריים עגולים במקום מרובעים?

3 לייקים

אכן זו הייתה הבעיה.
תודה לכם!!

לייק 1

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

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

אחד הפוסטים פוצל לנושא חדש: חוטש: חיבור מספר לא קבוע של רשימות