Python 中,单星号(*)和双星号(**)除了作为“乘”和“幂”的数值运算符外,还在列表、元组、字典的操作中有着重要作用。
一、列表(list)、元组(tuple)前面加星号(*)
列表前面加星号作用是将列表解开(unpacke)成多个独立的参数,传入函数。
def add(a, b):
return a + b
data = [7, 8]
print(add(*data)) # 15
import numpy as np
print(np.arange(3,6)) # [3 4 5]
list2 = [3, 6]
print(np.arange(*list2)) # [3 4 5]
二、字典(dict)前面加两星号(**)
字典前面加两个星号,是将字典解开成为独立的元素作为形参。
def add(a, b):
return a + b
data = {'a':7, 'b':8}
print(add(**data)) # 15