如何进行python函数参数的传递?

我们在讲述关于参数传递之前,先来回顾下,之前跟大家已经说过了的函数参数,以及路径传递方式,这样大家是否进行联系起来了呢?因为我们的编写内容是个活水,需要我们源源不断的往下流淌,因此关于传递这块内容,大家一定要跟着小编好好学习接下来的内容哦~这样有助于大家之后好好的利用这部分知识。

python函数是如何进行参数传递的

python的参数传递是赋值传递或者说是引用传递。下面我们来看个例子:

 
In [28]: def func(b):
    ...:     b = 2
 
In [29]: a = 1
 
In [30]: func(a)
 
In [31]: a
Out[31]: 1

这里的参数传递,使变量 a 和 b 同时指向了 1 这个对象。但当我们执行到 b = 2 时,系统会重新创建一个值为 2 的新对象,并让 b 指向它;而 a 仍然指向 1 这个对象。所以,a 的值不变,仍然为 1。

如何改变a的值呢?

我们可以在函数中将b返回

def func(b):
    b = 2
    return b
a = 1
a = func(a)
a
2

上面的例子我们的是int类型的,下面我们看一下列表的例子:

def func(l2):
    l2.append(77)
 
l1 = [12,3,6]
func(l1)
l1
[12,3,6,77]

这里 l1 和 l2 先是同时指向值为[1, 2, 3]的列表。不过,由于列表可变,执行 append() 函数,对其末尾加入新元素 4 时,变量 l1 和 l2 的值也都随之改变了.

结果是什么呢?

def func(l2):
    l2 = l2 + [4]
 
l1 = [12,3,6]
func(l1)
l1
[12,3,6]

可以看到,l1没有发生变化,原因是l2 + [4]这个操作表示创建了一个末尾加入元素 4的新列表,并让 l2 指向这个新的对象,l1还是指向原有的对象。

上述给大家演示的,就是关于整个函数的传参过程,大家如果遇到需要进行传参的内容,可以根据小编这边内容设置下,即可实现结果哦~

来源:PY学习网:原文地址:https://www.py.cn/article.html

hmoban主题是根据ripro二开的主题,极致后台体验,无插件,集成会员系统
自学咖网 » 如何进行python函数参数的传递?