赞
赏
Python 中 函数 的参数,为形式参数,即如果我们通过传值的方式,传递的参数其实是实际参数的一份拷贝,而不是真正的实际参数。
在 Python 中,函数的参数不需要我们显式的指定数据类型,直接写形参的 变量名 即可,Python 函数的参数的个数可以是 0 个或者任意多个。
def func_name():
# do
return val
参数 | 描述 |
---|---|
def | 定义函数所使用的关键字,所有的函数前面都必须使用该关键字。 |
func_name | 函数的名称。 |
return | 后面接函数的返回值,函数的返回值只能有一个,可以是任意的数据类型。 |
我们定义了一个函数,函数名为 func_name,该函数没有任何的参数。
def func_name(param1, param2):
# 执行语句...
return val
参数 | 描述 |
---|---|
def | 定义函数所使用的关键字,所有的函数前面都必须使用该关键字。 |
func_name | 函数的名称。 |
param1 | 函数的形参1。 |
param2 | 函数的形参2,函数可以有任意多个形参。 |
return | 后面接函数的返回值,函数的返回值只能有一个,可以是任意的数据类型。 |
我们定义了一个函数,函数名为 func_name,该函数接受两个参数。实际,Python 的函数的参数可以是 0 个或者任意多个。
用函数,实现寻找两个数的最大公约数
print("嗨客网(www.haicoder.net)")
# 用函数,实现计算两个数的最大公约数
def gcdNormal(x, y):
n = 0
if x > y:
n = y
else:
n = x
for i in range(n, 0, -1):
if x%i == 0 and y%i == 0:
return i
return 1
gcd = gcdNormal(10, 20)
print("gcd =", gcd)
程序运行后,控制台输出如下:
我们定义了一个函数 gcdNormal,传入两个参数 x 和 y,函数返回 x 和 y 的最大公约数。该函数使用了穷举法实现了求参数 x 和 参数 y 的最大公约数的逻辑。
最后,我们调用了 gcdNormal 函数,并传入了两个参数 10 和 20,使用 gcd 变量来接受 gcdNormal 函数返回的值,最后使用 print 函数打印最后的结果。
Python 的函数参数是函数参数,对函数参数的修改不会影响实参
print("嗨客网(www.haicoder.net)")
# Python的函数参数是函数参数,对函数参数的修改不会影响实参
def change(a):
a += 100
a = 10
change(a)
print("a =", a)
程序运行后,控制台输出如下:
我们定义了一个函数 change(),传入一个参数 a,在函数体中,对该函数的参数实现加 100 的操作。
最后,我们调用函数 change,并传入变量 a,执行完 change() 函数之后,我们再次打印变量 a 的值,发现 a 的值还是 10,并不是加 100 之后的 110。
因为在 Python中,函数的参数是函数参数,即是实参的拷贝,所以修改的不是实参,所以 a 的值不会改变。
Python 中函数的参数,为形式参数,即如果我们通过传值的方式,传递的参数其实是实际参数的一份拷贝,而不是真正的实际参数。
在 Python 中,函数的参数不需要我们显式的指定数据类型,直接写形参的变量名即可,Python 函数的参数的个数可以是 0 个或者任意多个。