代码示例:
在Python中,星号(*
)在变量前面有几种不同的用途,主要与函数参数和可变参数列表有关。以下是一些常见的用法及其详细说明和例子:
-
接收任意数量的位置参数:
当在函数定义中使用*
号前缀一个参数时,这个参数会收集所有未命名的位置参数到一个元组中。def my_function(*args): for arg in args: print(arg) my_function(1, 2, 3, 4) # 输出: # 1 # 2 # 3 # 4
-
解包参数:
当在函数调用中使用*
号前缀一个变量时,这个变量(通常是一个序列,如列表或元组)会被解包,其元素作为独立的参数传递给函数。numbers = [1, 2, 3, 4] my_function(*numbers) # 等同于 my_function(1, 2, 3, 4)
-
接收任意数量的关键字参数:
使用两个星号(**
)前缀一个参数,可以收集所有命名的关键字参数到一个字典中。def my_function(**kwargs): for key, value in kwargs.items(): print(f"{key}: {value}") my_function(name="Alice", age=25) # 输出: # name: Alice # age: 25
-
解包关键字参数:
当在函数调用中使用**
前缀一个变量时,这个变量(通常是一个字典)会被解包,其键值对作为命名的关键字参数传递给函数。info = {"name": "Alice", "age": 25} my_function(**info) # 等同于 my_function(name="Alice", age=25)
-
使用星号进行算术运算:
在Python中,星号(*
)也可以用于乘法运算。result = 3 * 4 print(result) # 输出:12
-
使用星号进行字符串重复:
星号(*
)还可以用于字符串的重复。repeated_string = "hello" * 3 print(repeated_string) # 输出:hellohellohello
这些用法展示了星号在Python中的多功能性,特别是在处理函数参数和可变参数列表时的灵活性。
喜欢本文,请点赞、收藏和关注!