def baz1(foo, *args):
* ถัดจาก args หมายถึง "นำพารามิเตอร์ที่เหลือมาใส่ในรายการที่เรียกว่า args"
ในบรรทัด:
foo(*args)
* ถัดจาก args ในที่นี้หมายถึง "นำรายการนี้ที่เรียกว่า args และ 'unwrap' ไปไว้ในพารามิเตอร์ที่เหลือ
ใน foo2 รายการจะถูกส่งต่ออย่างชัดเจน แต่ใน args ของ wrappers ทั้งสองมีรายการ [1,2,3]
def baz1(foo, *args): # with star foo(*args) def baz2(foo, args): # without star foo(*args) def foo2(x, y, z): print x+y+z baz1(foo2, 2, 3, 4) baz2(foo2, [2, 3, 4])
ผลลัพธ์
9 9