我有兩個列表(不同長度)。整個程序中有一個改變(list1
),其他(更長)不改變(list2
)。基本上我有一個功能,應該比較兩個列表中的元素,並且如果list1
中的某個元素位於list2
中,那麼list2
副本中的該元素將更改爲「A」,並且該副本中的所有其他元素將更改爲'B'。當list1
中只有一個元素時,我可以使其工作。但由於某些原因,如果該列表較長,list2
輪流到B所有元素....Python:如果元素在一個列表中,改變其他元素?
def newList(list1,list2):
newList= list2[:]
for i in range(len(list2)):
for element in list1:
if element==newList[i]:
newList[i]='A'
else:
newList[i]='B'
return newList
如果是這樣'NEWL ist = list2 [:]'? (而不是'newList:list2 [:]'?) – mgilson
OH!哦,是的。 – user1730110