欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Python内部参数中对外部实参的影响

程序员文章站 2023-01-22 17:14:59
无论函数传递的参数的可变还是不可变,只要针对参数使用赋值语句,会在函数内部修改局部变量的引用,不会影响到外部变量的引用,而如果传递的参数是可变类型,在函数内部使用方法修改了数据的内容,同样会影响到外部的数据。 运行结果: 运行结果: 无论函数传递的参数的可变还是不可变,只要针对参数使用赋值语句,会在 ......

无论函数传递的参数的可变还是不可变,只要针对参数使用赋值语句,会在函数内部修改局部变量的引用,不会影响到外部变量的引用,而如果传递的参数是可变类型,在函数内部使用方法修改了数据的内容,同样会影响到外部的数据。

def demo(num, num_list):
    print("函数内部")
    num = 99
    num_list = [33, 66, 99]

    print(num, num_list)

gl_num = 9
gl_list = [3, 6, 9]
demo(gl_num, gl_list)
print(gl_num, gl_list)

运行结果:
Python内部参数中对外部实参的影响
Python内部参数中对外部实参的影响

def mutable(num_list):
    num_list.append(100)
    print(num_list)


gl_list = [1, 2, 3]
mutable(gl_list)
print(gl_list)

Python内部参数中对外部实参的影响
运行结果:
Python内部参数中对外部实参的影响
无论函数传递的参数的可变还是不可变,只要针对参数使用赋值语句,会在函数内部修改局部变量的引用,不会影响到外部变量的引用,而如果传递的参数是可变类型,在函数内部使用方法修改了数据的内容,同样会影响到外部的数据。
转自:https://www.cnblogs.com/jery-9527/p/10658172.html