在Python中可用的 * 操作符的正确名称是什么?
在本篇文章中,我们将解释 Python 中 *
操作符的正确名称。
在Python中,您会频繁遇到使用符号 *
和 **
的情况。许多Python程序员,特别是中级水平的程序员,对Python中的星号 (*
)字符感到困惑。
*args
参数被称为“可变位置参数”,**kwargs
被称为“可变关键字参数”。*
和**
参数只是将它们各自的数据结构解包。
更多Python相关文章,请阅读:Python 教程
在乘法中使用星号(*)操作符
算法(步骤)
以下是执行所需任务的算法/步骤 −
- 创建两个变量并将它们分别存储在两个变量中。
-
使用
*
操作符 来乘以两个输入数字并创建一个变量来存储它。 -
输出两个数字的乘积结果。
例子
以下程序使用 * 操作符返回两个数字的乘积结果 −
# 输入数字1
inputNumber_1 = 10
# 输入数字2
inputNumber_2 = 5
# 使用 * 操作符将两个输入数字相乘
multResult = inputNumber_1 * inputNumber_2
# 输出两个数字的乘积结果
print("Resultant multiplication result using *:", multResult)
输出
执行上述程序将生成以下输出 −
Resultant multiplication result using *: 50
在指数运算中使用星号(**)操作符
- 创建两个变量并将它们分别存储在两个变量中。
-
使用
**
操作符 获取 inputNumber_1 的 inputNumber_2 次幂值(这里是2^5),并创建一个变量来存储它。 -
输出指数结果。
例子
以下程序使用 ** 操作符返回两个数字的指数结果 −
# 输入数字1
inputNumber_1 = 2
# 输入数字2
inputNumber_2 = 5
print("number 1 =",inputNumber_1,"\nnumber 2 =",inputNumber_2)
# 使用 ** 操作符以inputNumber_1为底数,inputNumber_2为指数获得指数结果(2^5)
expResult = inputNumber_1 ** inputNumber_2
# 输出指数结果
print("The resultant exponential result using **:", expResult)
输出
执行上述程序将生成以下输出 −
number 1 = 2
number 2 = 5
The resultant exponential result using **: 32
在第一个例子中,我们取了两个数字并将它们分别存储在两个变量中。当我们在两个变量之间使用 * 操作符时,结果是两个变量的乘积。当我们在两个变量之间使用 ** 操作符时,它作为两个变量的幂函数,其中第一个数字是底数,第二个数字是指数。
使用 * 操作符重复列表
Python列表还包括*运算符,它允许您创建一个新的列表,其中元素重复指定的次数。
算法(步骤)
以下是执行所需任务的算法/步骤 –
- 使用一些随机/虚拟值创建一个列表。
-
通过将给定的列表与*运算符相乘使列表n次(这里为2)变得不同。
示例
以下程序使用*运算符重复给定次数的列表:
# 输入列表
inputList = [5, 6, 7]
print("Input list =", inputList)
# 使用*运算符重复输入列表2次
print(inputList * 2)
输出
在执行以上程序时,将生成以下输出-
Input list = [5, 6, 7]
[5, 6, 7, 5, 6, 7]
在这里,我们使用了一组随机值的列表,并将其与*运算符相乘两次,以使输出由给定的列表重复两次。
使用*运算符展开函数。
在以原始格式(没有逗号和括号)打印数据时,此方法非常方便。许多程序员尝试通过合并函数来删除逗号和括号,因此这个简单的前缀星号可以解决解包问题。
算法(步骤)
以下是执行所需任务的算法/步骤 –
- 创建一个变量来存储输入列表,并给它一些随机值。
-
要打印由空格分隔的列表元素而不使用括号[],首先我们将列表转换为字符串,将str和list作为参数传递给map()函数。它将列表的每个元素转换为字符串类型并返回项的结果列表。join()函数(join()用于连接由字符串分隔的序列的元素)用于将结果列表转换为字符串。
-
不使用以前的方法,我们可以使用星号运算符(*)打印空格分隔的列表。
示例
# 输入列表
inputList = ['TutorialsPoint', 'Python', 'Codes', 'hello', 5, 'everyone', 10, 5.3]
print("Input list =", inputList)
# 使用map()将列表元素转换为字符串
# 应用join()函数将列表转换为字符串
# 不使用星号(*)运算符
print('Without Using * Operator :')
print(' '.join(map(str, inputList)))
# 使用星号(*)运算符
print('Using * operator : ')
print(*inputList)
输出
在执行以上程序时,将生成以下输出-
输入列表 = ['TutorialsPoint', 'Python', 'Codes', 'hello', 5, 'everyone', 10, 5.3]
不使用*运算符:
TutorialsPoint Python Codes hello 5 everyone 10 5.3
使用*运算符:
TutorialsPoint Python Codes hello 5 everyone 10 5.3
两种方法的输出结果相同。
使用可变数量的位置参数传递函数
在此方法中,单个星号(*)还用于 ***args** 。
它用于将可变数量的参数传递给函数; 最常用于传递非键参数和变长参数列表。
它有各种应用之一如下所述。 我们创建了一个 addNumbers 函数,该函数接受任何数量的参数并可以使用 *args 将它们全部加在一起。
示例
# 创建一个接受任意数量参数并
# 返回传递给它的参数总和的函数
def addNumbers(*args):
# 获取传递给函数的任何数字的总和
return sum(args)
# 调用addNumbers()函数,通过将某些
# 随机数字作为它的参数来得到它们的总和。
print("4,6,15,5的总和 = ", addNumbers(4, 6, 15, 5))
输出结果
在执行上述程序时,将生成以下输出−
4,6,15,5的总和 = 30
两种方法的输出结果相同。
结论
在本文中,我们学习了*
运算符的正确名称以及在Python编程语言中可用于各种应用的方法。 我们还使用了一个示例来演示*
和**
运算符之间的差异。