看python标准库的时候会发现同一个参数有的加星号,有的又不加星号,他们有什么区别呢?还有一些参数有两个星号;调用标准库函数的时候传参也加星号;今天来稍微归纳一下。
1.iterable和*iterables:不加星号表示一个可迭代的类型(即容器类型);加星号表示一个或多个可迭代的类型;
例如:
max函数:max(iterable) -> value #容器类型里的数据进行比较,返回最大值
map函数:map(func, *iterables) --> map object; # 通过把函数func依次作用在容器类型的每个元素上,得到一个新的object并返回
实例:
my_list = [1, 2, 3, 1]
value = max(my_list)
print(value) # 3
my_dict = {
'a': 1, 'b': 2, 'c': 3, 'd': 1 }
keys = dict.keys() # dict_keys(['a', 'b', 'c', 'd']) <class 'dict_keys'>,也是可迭代类型
ma