Модули datetime
Барои кор бо сана ва вақт дар Python модули datetime (аз калимаҳои date – сана ва time – вақт) лозим аст. Онро чунин ворид мекунанд:
as dt – номи кӯтоҳ: баъд ба ҷои datetime менависем dt. Барои сохтани санаи муайян dt.datetime(...)-ро даъват мекунанд. Се аргументи аввал – сол, моҳ, рӯз – ҳатмианд; боқӣ (соат, дақиқа, сония) – ихтиёрӣ.
Масалан, лаҳзаи парвози аввалин кайҳоннавард Ю. А. Гагарин: 12 апрели соли 1961, соати 9:07:
Натиҷа:
Тартиби аргументҳо: сол, моҳ, рӯз, соат, дақиқа, сония.
Стандарти UTC
Қаблан вақтро аз рӯи GMT (Greenwich Mean Time – вақти Гринвич) сабт мекарданд. Имрӯз стандарти ҷаҳонии UTC (Coordinated Universal Time – вақти ҳамоҳангшудаи универсалӣ) истифода мешавад, ки ба соатҳои атомӣ такя мекунад.
Вақти ҷорӣ дар UTC-ро чунин мегиранд: dt.datetime.now(dt.timezone.utc).
Натиҷа:
Фосилаи вақт: timedelta
Барои вақти минтақаҳои гуногун ва ҳисоби сана объекти навъи timedelta (delta – фарқ, тағйирот) истифода мешавад. Параметрҳояш: days (рӯз), hours (соат), minutes (дақиқа), seconds (сония), microseconds (микросония).
Душанбе дар минтақаи UTC + 5 соат аст. Пас вақти Душанбе = вақти UTC + timedelta(hours=5):
Натиҷа:
Қимати period – 5:00:00 (5 соат, 0 дақиқа, 0 сония). Дар охир шумо вақти UTC ва вақти Душанберо мебинед: дуюмаш 5 соат зиёд. Агар шабонарӯз гузашта бошад, сана ҳам иваз мешавад.
Ба сана рӯз ҳам илова кардан мумкин:
Натиҷа: