משחק עם מודולים - משהו לא עובד

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

print(list(itertools.chain([6, 1, 2],'abc')))

def my_func(*parameters):
    a=list(itertools.chain(parameters))
    return a

my_func([6, 1, 2],'abc')
[6, 1, 2, 'a', 'b', 'c']


[[6, 1, 2], 'abc']

אני לא מכיר את המודול הזה, אבל אפשר לראות את ההבדל בקוד:
שאתה מזמן אותו לבד אתה מכניס לו איברים בודדים שמופרדים בפסיק,

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

לייק 1

המון תודה! שכחתי ש - * יוצרת tuple.

תיקון קליל של מינוח: המודול הוא itertools והפונקציה היא chain

לייק 1