我正在手動執行幾個像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