您可以使用函數更改列表中的元素,該元素檢查元素是否爲0
。
def setElement(l, index, element):
'''Change the element from given list(l) at given index.'''
if l[index] != 0:
raise Exception("Attempt to overwrite %s instead of 0" %l[index])
else:
l[index] = element
現在你可以通過調用setElement(<list>, <index>, <element>)
In[1]: a = [0, 0, 0, 0, 0, 0, 0]
In[2]: setElement(a, 2, 3)
In[3]: setElement(a, len(a)-1, "Last Element!")
In[4]: setElement(a, len(a)-1, 53)
Out[4]: Attempt to overwrite "Last Element!" instead of 0
In[5]: print(a)
Out[5]: [0, 0, 3, 0, 0, 0, "Last Element"]
你叫有什麼用 '覆蓋'?您是否想用其他對象替換元素而不更改列表中元素的總數? – eyquem
這是正確的!我以前沒看到你的答案,但是,我想保留元素的總數,但用其他對象替換零元素:) – Nekroz