Alex__Alex
Дек. 5, 2019 23:46:03
Хотел сделать простенький будильник, который по заданному времени открывает песню. Но в заданное время ничего не происходит и цикл не завершается. Вот код:
import datetime
import os
now = datetime.datetime.now()
hours = int(input("Введите час ")) # Вводим час, в который должен включится будильник
min1 = int(input("Введите минуты ")) # Вводим минуты
x = 0
while x!= 1: # Цикл, который выполняется до тех пор,
# пока полученные данные о времени
# не совпадут с нашими данными о времени
if int(now.hour) == hours and int(now.minute) == min1: #сравниваем наши данные
# и полученные из системы
os.startfile(r"C:\Users\Лёха\Desktop\Макс Корж - Мой друг.mp3")
x = 1
else:
x = 0
py.user.next
Дек. 6, 2019 01:24:00
В каждой ветви if поставь print() и там выведи название ветви и все переменные - now, hours, min1, now.hour, now.minute. Так ты узнаешь, почему цикл неправильно работает.
doza_and
Дек. 6, 2019 06:33:43
неплохо еще time.sleep() поставить чтобы проц не грузить.
Для решения таких задач есть модуль
https://docs.python.org/3/library/sched.html
KoVK
Дек. 6, 2019 21:58:36
цикл работает
но переменной ‘now’ вы присвоили значение единожды в начале программы и потом она не меняется.
а надо обновлять.