我正在手动执行几个像append(),insert()等列表方法。我试图在列表的末尾添加元素(如append方法) 。这是我使用的工作代码:如何在python中用函数(带返回值)更新列表
arr = [4,5,6]
def push(x, item):
x += [item]
return x
push(arr,7)
print(arr) #Output: [4,5,6,7]
但是,当我实现相同的代码没有什么区别。我得到不同的输出。
arr = [4,5,6]
def push(x, item):
x = x + [item]
return x
push(arr,7)
print(arr) #Output: [4,5,6]
而且我对插入方法也是一样的。下面是插入方法的代码:
arr = [4,5,7,8]
def insert(x, index, item):
x = x[:index] + [item] + x[index:]
return x
insert(arr,2,6)
print(arr) #Output: [4,5,7,8]
我知道我可以通过arr=insert(arr,2,6)
返回值保存到列表中,但我想要一个替代的解决方案,该列表中调用函数像我的第一个代码样本中后自动获得更新。
编辑1: 我认为x[index:index] = [item]
是更好的解决方案的问题。
[相关](https://stackoverflow.com/questions/15376509/when-is-ix-different-from-iix-in-python) – jacoblaw