繁体   English   中英

Python函数参数

[英]Python functions parameter

为什么append方法在原始数字列表上起作用并且更改了数字列表,但是我无法将数字列表重新分配给[4,5,6]?

def change(numbers_list):
    numbers_list.append(4)
    numbers_list = [4,5,6]
numbers = [1,2,3]
change(numbers)
print(numbers)

当代码运行此打印时:

[1,2,3,4]

为什么不[4,5,6]?

append的功能是append项目添加到现有列表中。 无效的原因是您正在做许多无效的事情。 对于一个,您正在调用函数,但从未将return分配给variable 其次,您对append的使用是void因为直接在声明numbers_list = [4, 5, 6] 如果功能的目标只是将[1, 2, 3]更改为[4, 5, 6]则设置应为此。

def change(numbers_list):
    numbers_list = [4,5,6]
    return numbers_list

numbers = [1,2,3]
numbers = change(numbers)
print(numbers)
# [4, 5, 6]

尽管这足够了

numbers = [1, 2, 3]
numbers = [4, 5, 6]
print(numbers)
# [4, 5, 6]

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM