Ваш код не работает, потому что вы пытаетесь присвоить переменной word
новое значение OOV
, что хорошо, но на самом деле он не изменяет этот элемент внутри list1
. Так что вам нужно изменить элемент на месте внутри list1
Попробуйте это:
def replace_words(list1, list2):
for idx in range(len(list1)):
if list1[idx] in list2:
list1[idx] = "OOV"
И когда вы сейчас выполните >>>list1.count("OOV")
это не вернет 0, если есть значение в list1
, которое также находится в list2
Надеюсь, это поможет!