Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Python

Toán tử Star (*) trong Python có ý nghĩa gì?

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