Toán tử sao * trong Python có nhiều ý nghĩa:
1. Với kiểu số: toán tử nhân
>>> a = 10; b = 20; a * b 200 >>> a = 1.5; b = 2.5; a * b 3.75 >>> a = 2 + 3j; b = 3 + 2j; a * b 13j
2. Với sequence (string, list, tuple): toán tử lặp lại (repetition)
>>> s = "Hello"; s * 3 'HelloHelloHello' >>> L1 = [1, 2, 3]; L1 * 3 [1, 2, 3, 1, 2, 3, 1, 2, 3] >>> T1 = (1, 2, 3); T1 * 3 (1, 2, 3, 1, 2, 3, 1, 2, 3)
3. Trong khai báo hàm: *args cho phép số lượng tham số biến đổi
Bên trong hàm nó hoạt động như một tuple.
>>> def function(*arg): ... print(type(arg)) ... for i in arg: ... print(i) >>> function(1, 2, 3) <class 'tuple'> 1 2 3