Python *
运算符的正确名称是什么
在本文中,我们将解释Python中*
运算符的正确名称。
在Python中,你会经常遇到*
和**
这两个符号。许多Python程序员,尤其是中级水平的程序员,对Python中的星号(*
)字符感到困惑。
*args
参数被称为“变量位置参数”, **kwargs
被称为“变量关键字参数”。*
和**
仅仅是展开它们各自的数据结构。
使用星号(*
)运算符进行乘法运算
步骤
以下是执行所需任务的算法/步骤:
- 创建两个变量并将它们存储在两个不同的变量中。
- 使用
*
运算符乘以输入的两个数字,并创建一个变量来存储结果。 - 打印两个数字的乘积。
示例
以下程序使用*运算符返回两个数字的乘积:
# input number 1
inputNumber_1 = 10
# input number 2
inputNumber_2 = 5
# multiplying both the input numbers using the * operator
multResult = inputNumber_1 * inputNumber_2
# printing the resultant multiplication of 2 numbers
print("Resultant multiplication result using *:", multResult)
输出
执行上述程序后,将生成以下输出:
Resultant multiplication result using *: 50
使用Asterisk(**
)运算符进行指数运算
- 创建两个变量并将它们存储在两个单独的变量中。
-
使用
**
运算符 获取inputNumber_1的inputNumber_2次幂(即2^5),并创建一个变量来存储它。 -
打印结果指数值。
示例
以下程序使用**
运算符返回两个数字的指数结果 –
# input number 1
inputNumber_1 = 2
# input number 2
inputNumber_2 = 5
print("number 1 =",inputNumber_1,"\nnumber 2 =",inputNumber_2)
# getting the exponential value of inputNumber_1 to the
# power of inputNumber_2 (2^5) using ** operator
expResult = inputNumber_1 ** inputNumber_2
# printing the resultant exponential value
print("The resultant exponential result using **:", expResult)
输出
执行上述程序时,将生成以下输出 –
number 1 = 2
number 2 = 5
The resultant exponential result using **: 32
在第一个示例中,我们取了两个数字并将它们存储在两个单独的变量中。当我们在两个变量之间使用*
运算符时,结果是两个变量的乘积。当我们在两个变量之间使用**
运算符时,它作为两个变量的幂函数,其中第一个数字是底数,第二个数字是指数。
使用*
运算符重复列表
Python列表还包括*运算符,它允许您创建一个新列表,并重复指定次数的元素。
步骤
下面是要执行所需任务的算法/步骤−
- 用一些随机/虚拟值创建一个列表。
-
通过将给定的列表与*运算符相乘,将列表乘以n次(这里是2)。
示例
下面的程序使用*
运算符将列表重复给定次数 −
# input list
inputList = [5, 6, 7]
print("Input list =",inputList)
# Repeating the input list 2 times using the * operator
print(inputList * 2)
输出
在执行上述程序时,将生成以下输出结果:
Input list = [5, 6, 7]
[5, 6, 7, 5, 6, 7]
在这里,我们使用*运算符将一组随机值乘以两次,以便输出结果是给定列表重复两次。
使用*
运算符展开函数
这种方法在以原始格式(没有逗号和括号)打印数据时非常方便。许多程序员试图通过合并函数来去除逗号和括号,因此这个简单的前缀星号可以解决您在展开它们时遇到的问题。
步骤
以下是执行所需任务的算法/步骤 –
- 创建一个变量来存储输入列表,并给它一些随机值。
-
为了打印以空格分隔的列表元素而不带括号[],首先通过将str和list作为参数传递给 map() 函数将列表转换为字符串。它将列表的每个元素转换为字符串类型,并返回结果列表。使用 join() 函数(join()用于连接由字符串分隔的序列的元素)将结果列表转换为字符串。
-
与上一种方法不同,我们可以使用星号运算符(
*
)打印以空格分隔的列表。
示例
# input list
inputList = ['TutorialsPoint', 'Python', 'Codes', 'hello', 5, 'everyone', 10, 5.3]
print("Input list =",inputList)
# Converting list elements to string using map()
# Applying join() function to convert list to string
# Without using the asterisk (*) operator
print('Without Using * Operator :')
print(' '.join(map(str,inputList)))
# Using the asterisk (*) operator
print('Using * operator : ')
print (*inputList)
输出
执行上述程序后,将生成以下输出:
Input list = ['TutorialsPoint', 'Python', 'Codes', 'hello', 5, 'everyone', 10, 5.3]
Without Using * Operator :
TutorialsPoint Python Codes hello 5 everyone 10 5.3
Using * operator :
TutorialsPoint Python Codes hello 5 everyone 10 5.3
使用这两种方法输出结果是相同的。
使用任意数量的位置参数传递函数
在这种方法中,单个星号(*
)也用于 *args
。
它用于向函数传递可变数量的参数;它最常用于传递非关键参数和可变长度参数列表。
它有各种应用,其中之一如下所述。我们创建一个 addNumbers 函数,它接受任意数量的参数,并可以使用 *args
将它们全部相加。
示例
# creating a function that accepts any number of arguments to it and
# returns the sum of arguments passed to it
def addNumbers(*args):
# getting the sum of any numbers passed to the function
return sum(args)
# calling the addNumbers() function by passing some
# random numbers as arguments to it to get the sum of those.
print("Sum of 4,6,15,5 = ", addNumbers(4, 6, 15, 5))
输出
执行上述程序后,将会生成以下输出结果:
Sum of 4,6,15,5 = 30
无论使用哪种方法,输出结果都是相同的。
结论
在本文中,我们了解了 *
运算符的正确名称以及它在Python编程语言中的多种应用方式。我们还使用了一个示例来演示 *
和 **
运算符之间的区别。