Python 中星号的使用
Python 编程语言在不同的上下文中使用 * 和 **。在本文中,我们将了解这两种符号的使用方式以及各自的实用场景。
作为中缀运算符
当 * 用作中缀运算符时,它基本上给出数字的数学乘积。在下面的示例中,我们使用整数、浮点数和复数进行乘法并获得结果。
示例
# Integers x = 20 y = 10 z = x * y print(z,"\n") # Floats x1 = 2.5 y1 = 5.1 z1 = x1 * y1 print(z1,"\n") # Complex Numbers x2 = 4 + 5j y2 = 5 + 4j z2 = x2 * y2 print(z2,"\n")
输出
运行以上代码将得到以下结果:
200 12.75 41j
我们也可以将其用作中缀运算符来扩展字符串。
示例
str = "Point-" print(str * 4,"\n") List = [4, 5, 6] print(List * 3,"\n") Tuple = (9, 8, 7) print(Tuple * 2)
输出
运行以上代码将得到以下结果:
Point-Point-Point-Point- [4, 5, 6, 4, 5, 6, 4, 5, 6] (9, 8, 7, 9, 8, 7)
作为前缀运算符
我们可以使用单个星号作为前缀。以下示例描述了如何将其用作前缀的各种示例。
展开可迭代对象
可以通过在可迭代对象(如列表或元组)的名称前添加星号来展开它。
示例
week_days =['Mon','Tue','Wed','Thu','Fri'] print(week_days)
输出
运行以上代码将得到以下结果:
Mon Tue Wed Thu Fri
接收可变数量的参数
我们可以使用单个星号符号向函数传递可变数量的参数。如下面的程序所示。
示例
def many_sums(*args): res = 0 # Iterating over the Python args tuple for x in args: res = res + x return res print(many_sums(1, 2)) print(many_sums(11, 21, 30)) print(many_sums(5.5,0))
输出
运行以上代码将得到以下结果:
3 62 5.5
使用 **
双星号用于基于关键字的参数。此处参数作为字典传递,而不是作为单个值传递。
示例
def join_keys(**kwargs): result = "" # Iterating over kwargs dictionary keys for arg in kwargs.keys(): result += arg return result def join_values(**kwargs): result = "" # Iterating over kwargs dictionary values for arg in kwargs.values(): result += arg return result print(join_keys(day1="Mon-", day2="Tue-", day3="Wed-", day4="Thu-")) print(join_values(day1="Mon-", day2="Tue-", day3="Wed-", day4="Thu-"))
输出
运行以上代码将得到以下结果:
day1day2day3day4 Mon-Tue-Wed-Thu-
广告