我有一个很长的列表:
old_list = ['cat','dog','bat','cat',...]
我使用以下代码将整个列表复制到另一个列表中,并对某些特定条件进行了更改:
new_list = []
for item in old_list:
if item == ("cat" or "bat"):
new_list.append("a")
elif item == "dog" or "fog" or "sog" or "log":
new_list.append("o")
else:
new_list.append(item)
问题是在某些情况下" cat"和" bat"正确地替换为" a"但在某些情况下" cat"或者" bat"当我打印new_list
我做错了什么?
答案 0 :(得分:2)
使用
if item in {"dog", "fog", "sog", "log"}:
...
答案 1 :(得分:1)
这将解决您的问题
old_list = ['cat','dog','bat','cat']
new_list = []
for item in old_list:
if item == "cat" or item=="bat":
new_list.append("a")
elif item == "dog" or item== "fog" or item=="sog" or item=="log":
new_list.append("o")
else:
new_list.append(item)
print(new_list)