Мне дали сценарий Python, который позволяет мне отключить объем моего Mac в то время, когда я устанавливал, чтобы любые подкасты, которые я слушаю, когда я засыпаю, не разбудил меня, как только я сплю. < /p>
Тем не менее, он будет действовать только после того, как в этот день произойдет время, поэтому, если я попытаюсь активировать его до полуночи, он немедленно отключит ноутбук, что не идеально, потому что, если я хочу использовать его, мне придется подождать, пока полночь пройдет, прежде чем я пойду спать. < /p>
#!/usr/bin/env python3
import datetime as dt
import osascript
import sys
from threading import Timer
def do_the_biz():
osascript.osascript("set volume output volume 0")
print("Night night")
today = dt.datetime.now()
dateString = today.strftime('%d-%m-%Y') + " " + sys.argv[1]
newDate = today.strptime(dateString,'%d-%m-%Y %H:%M')
delay = (newDate - dt.datetime.now()).total_seconds()
Timer(delay,do_the_biz,()).start()
< /code>
Итак, типичное выполнение этого скрипта выглядит следующим образом: < /p>
$./sleep.py 04:00
< /code>
и командная строка вернет следующее после того, как она достигнет 4 часа утра, а затем закройте программу: < /p>
Night Night
< /code>
Что я хотел бы, чтобы иметь возможность манипулировать датой так, чтобы сценарий будет работать в следующее доступное время, например, 4:00, так что он по существу будет работать почти так же, как и тревога. Для этого я мог бы запустить совершенно другой сценарий sleep.tomorrow Терминал. < /li>
< /ul>
Я новичок в Python, и мне было трудно понять различия между различными функциями DateTime и документированием не помогли, поэтому краткое объяснение и сравнение между тем, что они вводят и выводятся и тем, как они возмещаются.>
Подробнее здесь: https://stackoverflow.com/questions/576 ... r-tomorrow
Как создать «тревогу» на питоне, который будет действовать сегодня или завтра ⇐ Python
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение