Python星号用法小结

1

乘法和乘方

2

用在函数定义的参数时,

def func(a, *b, **c):
...

在函数的参数中,当以标记一个参数时,表明这个参数是可变参数,具体来讲,用单星号*标记参数,表示其是可变的位置参数,并且以元组的形式将外部的多个位置参数返回给该参数变量,如果用双星号**标记,表示其看是可变的关键词参数,并且会以字典的形式将外部的多组关键词参数和值返回给该参数变量。

3

可以用 *运算符把一个可迭代对象拆开作为函数的参数:

>>> divmod(20, 8)
(2, 4)
>>> t = (20, 8)
>>> divmod(*t)
(2, 4)

4

用星号处理拆包时的部分元素。

>>> a = (1,2,3,4)
>>> b,c,*d=a
>>> d
(3,4)

5

限制关键词参数

def func(a, *, b):
pass
func(1, b = 2)

6

拆包列表或者字典:

a = [1,2,3]
b = [4,5,6]
c = [*a, 10, * b] # [1, 2, 3, 10, 4, 5, 6]

d = {'k1': 1}
e = {'k2': 2}
f = {**d, **e, 'k3': 3} # {'k1': 1, 'k2': 2, 'k3': 3}

More

文章作者: Met Guo
文章链接: https://guoyujian.github.io/2024/03/06/Python%E6%98%9F%E5%8F%B7%E7%94%A8%E6%B3%95%E5%B0%8F%E7%BB%93/
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 Gmet's Blog