Не могу понять, как работает простой код в Python
Задание было, написать код, которые выявляет дубликат, если 2 раза подряд написать одинаковую цифру. Может я сейчас слишком варенным пришёл после работы, но не смог это сделать. В итоге решение было таким
print("Программа для отслеживания температуры")
count_failures = 0
stop_program = False
last_temperature = -999
while not stop_program:
sensor = int(input("Какая температура на датчике? "))
if sensor == last_temperature:
count_failures += 1
print("Внимание: дублирующее значение температуры", sensor, "обнаружено!")
print("Зафиксировано сбоев датчика:", count_failures)
continue_collecting_data = int(input("Хотите продолжить сбор данных? 1-да, 0-нет: "))
if continue_collecting_data == 0:
print("Сбор данных остановлен")
stop_program = True
else:
last_temperature = -999
last_temperature = sensor
Не могу понять как работает if sensor == last_temperature:, если изначально ему присвоили значение -999
-999 - это только на первой итерации цикла: чтобы первое вводимое значение не оказалось дублем.
Но в конце каждой итерации цикла делается: last_temperature = sensor и, потому, на каждой следующей итерации sensor == last_temperature сравнивает новое значение sensor c предыдущим значением sensor, сохранённым в last_temperature.
Вот эти две строчки внутри цикла:
else:
last_temperature = -999
не имеют никакого смысла и их лучше удалить.
-999? Ого, физики хреновы... Абсолютный ноль по Кельвину минус 273,15 градусов. Ниже не бывает