Python函数参数类型
在这篇 Python 文章中,我们将学习 Python 中使用的函数参数类型。我们还将学习如何写一个没有参数的Python函数。
我们将看到我们如何在Python中写一个有一个或多个参数的函数。我们需要理解一个函数以及如何在Python中写一个函数。
让我们首先了解Python中参数类型的概念。
Python 函数参数类型
Python 函数参数提供了函数执行时使用的数据。我们可以以不同的方式指定参数,但不是所有的方法在每个函数中都需要。
这取决于函数的功能,我们根据情况来决定。
当我们指定参数时,它们可能会被指定数据类型,这些类型必须与预期的内容相匹配,否则代码将无法正常运行。
参数声明方法default
,**kwargs
, 和**args
是我们在 Python 中处理任何函数时的参数。
但是在进入我们的主要话题之前,我们首先要了解一下函数的基本知识,这样就更容易处理函数参数。
什么是 Python 中的函数
Python 中的一个函数可以定义为当函数被调用时将被执行的语句列表。我们可以通过使用关键字def
来定义一个函数,并给它指定一个名字。
在这篇文章中,我们将通过实例逐一介绍下面提到的领域。
- 编写一个函数
- 无参数的函数
- 有一个参数的函数
- 一个返回值的函数
- 多个参数,多个返回值的函数
编写一个函数
首先,我们将根据自己的需要编写一个函数,只要我们调用它,它就会按照我们的要求工作。
假设我们想要一个能接收任何数字并给出该数字的平方的函数。要知道,定义函数很容易。
现在,我们需要做的就是使用def
关键字,然后是我们的函数名称,后面是括号()
,再后面是冒号:
。
示例代码:
def my_first_function():
无参数函数
在我们的方案中,我们想要一个将数字平方化的函数,将我们的函数命名为square
。这样我们就可以定义我们的square
函数。
示例代码:
def square():
现在,如果我们想让我们的函数对我们提供的数字进行平方运算,我们将不得不把这个功能赋予我们的函数square
。
- 我们将定义这个函数
- 将数字乘以2,并将其分配给一个变量
- 在函数中打印该变量
- 调用该函数,因为如果我们不调用该函数,我们将无法得到输出结果。
示例代码:
def square():
value = 2**2
print(value)
记住,我们从不在函数内调用函数;我们在函数外调用。
square()
输出:
4
但是,如果我们想给函数提供不同的数字,这样我们就可以根据情况找到不同数字的平方,怎么办?
有一个参数的函数
这就是参数派上用场的地方。我们将在函数中传递一个参数。
因此,每当我们想知道任何数字的平方时,我们将调用该函数并将该数字交给该函数。
在几纳秒内,我们就能得到任何数值的平方。让我们用一个例子来试试,让我们再次定义带参数的square
函数。
示例代码:
def square(number):
value = number**2
print(value)
现在,我们将调用该函数,并给它一些随机数字,看它是否能给出正确的平方。
square(5)
输出结果:
25
为了找到25的平方,我们将调用我们的函数square
,并给它一个值25。
square(25)
输出:
625
返回一个值的函数
如果我们不直接打印数值,我们要返回它并将其分配给另一个变量。我们使用return
关键字。
请看下面的例子。
def square(number):
values = number**2
return values
现在我们将把我们的函数分配给我们在函数之外的一个变量。
values = square(3)
为了看到上述代码的输出,我们将打印我们所创建的变量。
print(values)
输出:
9
多个参数和多个返回值
现在我们将看到:
- 一个函数如何接受一个以上的参数
- 我们如何向一个函数传递多个参数
- 我们如何获得多个返回值
让我们通过一个例子来完成这些工作。我们将定义一个接受一个以上参数的函数,它需要多个参数和多个返回值。
示例代码:
def raise_to_power(val, val2):
return val**val2
现在我们调用这个函数,并为函数中提到的参数传递两个值val, val2
。
print(raise_to_power(3,5))
输出:
243
Python中的默认参数和灵活参数
假设我们正在编写一个需要多个参数的函数,而且其中一些参数也有一个共同的值。
在这种情况下,我们想调用一个函数,而不指定每一个函数。有时,我们希望某些参数在没有指定时使用默认参数。
现在我们将学习:
- 如何编写一个带有默认参数的函数
-
*args
– 灵活参数允许我们在函数中传递任意数量的参数。 -
**kwargs
– 关键字参数
定义一个带有默认参数值的函数;在函数头中,在感兴趣的参数后面加上一个等号和默认参数值。
示例代码:
def power(word, pow = 1):
words = word ** pow
return words
现在我们将调用我们的函数power
,我们将只传递一个参数,即参数word
。
print(power(3))
输出:
3
函数中的第二个参数的默认值是1
,3 power 1
=3
。
Python函数中灵活的参数*args
当不确定给我们的函数的参数数量时,我们在函数规范中的参数名称前添加一个*
。
假设我们想写一个函数,但不确定用户会传递多少个参数。我们将定义一个函数,接收int
和floats
,并将其相加。
示例代码:
def add_all(*number):
sum_all = 0
# apply for loop to sum all the parameter
for num in number:
sum_all += num
return sum_all
现在我们将调用该函数并传递一些参数。
print(add_all(2,45,3.2,45))
输出:
95.2
关键字参数**kwargs
在函数中,在参数名声明之前,当我们不确定将在函数中提供的关键字参数的数量时,我们会添加两个星号,**
。
这将允许函数在收到参数字典后适当地访问这些项目。
示例代码:
def my_function(**name):
print("The child's last name is " + name["last_name"])
现在我们调用这个函数并传递一些参数。
my_function(first_name = "Abid", last_name = "Orakzai")
输出:
The child's last name is Orakzai
结论
这样,我们就可以知道,Python 函数可以接受三种不同的参数。它们是任意的*args
,关键字**kwargs
,和default parameters
。
关键词参数允许我们采用任何顺序,而默认参数则协助我们处理没有数值的情况。最后,当我们不知道会得到多少个参数时,Python 的任意参数*args
就会派上用场。
我们希望你认为这篇文章对理解Python中使用的函数参数类型的基本概念有帮助。