Думаю, вы привели небольшой пример, но мы упускаем информацию о структуре данных, является ли человек классом?
Вы не назначаете человека как зараженного.
Когда вы заразили первого люди
infected = infect_random(population)
вы назначаете его зараженным, но когда вы заражаете другого человека, которого вы не делаете, вы включаете его в красный цвет, возвращаете человека:
def infect_person(person):
"""
Makes the turtle infected
"""
infected_person = person.color("red")
return infected_person
но курица В вашем коде вы не назначаете его,
infect_person(person)
Я предлагаю либо использовать способ узнать, кто инфицирован, а кто нет. Например: если вы использовали POO:
, вы можете добавить поле is_infected
, иначе используйте список, в котором хранятся индексы человека быть зараженным?
При этом вам придется изменить способ проверки, заражен ли кто-то поблизости. Для всех людей, находящихся рядом с человеком, если один инфицирован, то заражаюсь я ...