От работы со временем не убежать. Вы должны уметь выводить дату в различных форматах. Более того, вы должны прибавлять к дате заданные величины. Например, прибавить к дате 3 дня. В Python есть модуль datetime для работы с датой.
#!/usr/bin/python3
from datetime import *
today = datetime.today()
print('Today is', today)
#вывод: Today is 2017-05-10 22:07:35.046777
for attr in ['year', 'month', 'day', 'hour', 'minute', 'second', 'microsecond']:
print(attr, ':\t', getattr(today, attr))
'''
вывод:
year : 2017
month : 5
day : 10
hour : 22
minute : 11
second : 8
microsecond : 268701
'''
# sep = ' ' - разделитель
print('time:', today.hour, ':', today.minute, sep = ' ')
#вывод: time: 22 : 19
day = today.strftime('%A')
month = today.strftime('%B')
print('Date:', day, month, today.day)
#вывод: Date: Wednesday May 10
Теперь посмотрите на пример ниже. Тут выводится текущее время.
#!/usr/bin/python3
from datetime import *
"""
%A - полное завание недели
%B - полное название месяца
%c - дата и время
%d - порядковый номер дня в месяце
%f - количество микросекунд от 0 до 9999999
%H - десятичное представление часа от 0 до 23 (для 24-часового вида)
%I - десятичное представление часа от 1 до 12 (для 12-часового вида)
%j - порядковый номер дня в году от 0 до 366
%m - порядковый номер месяца от 1 до 12
%M - десятичное представление минут от 0 до 59
%p - обозначение АМ(до полудня) или РМ(после полудня)
%S - десятичное представление секунд от 0 до 59
%w - порядковый номер дня в неделе от 0 (воскресенье) до 6
%W - порядковый номер недели в году от 0 до 53
%X - локальное время (%x - локальная дата)
%Y - полное десятичное представление года от 0001 до 9999 (%y -\
для кратного представления от 00 до 99)
%z - смещение часового пояса от UTC в виде +ЧЧММ или -ЧЧММ
%Z - название часового пояса
"""
today = datetime.today()
print('A:', today.strftime('%A'))
print('B:', today.strftime('%B'))
print('c:', today.strftime('%c'))
print('d:', today.strftime('%d'))
print('f:', today.strftime('%f'))
print('H:', today.strftime('%H'))
print('I:', today.strftime('%I'))
print('j:', today.strftime('%j'))
print('m:', today.strftime('%m'))
print('M:', today.strftime('%M'))
print('p:', today.strftime('%p'))
print('S:', today.strftime('%S'))
print('w:', today.strftime('%w'))
print('W:', today.strftime('%W'))
print('Y:', today.strftime('%Y'))
print('z:', today.strftime('%z'))
print('Z:', today.strftime('%Z'))
'''
вывод:
A: Wednesday
B: May
c: Wed May 10 22:42:36 2017
d: 10
f: 618084
H: 22
I: 10
j: 130
m: 05
M: 42
p: PM
S: 36
w: 3
W: 19
Y: 2017
z:
Z:
'''
Функция strftime(формат, [t]) - преобразует время в строку по формату:
Формат | Значение |
---|---|
%a | Сокращенное название дня недели |
%A | Полное название дня недели |
%b | Сокращенное название месяца |
%B | Полное название месяца |
%c | Дата и время |
%d | День месяца [01,31] |
%H | Час (24-часовой формат) [00,23] |
%I | Час (12-часовой формат) [01,12] |
%j | День года [001,366] |
%m | Номер месяца [01,12] |
%M | Число минут [00,59] |
%p | До полудня или после (при 12-часовом формате) |
%S | Число секунд [00,61] |
%U | Номер недели в году (нулевая неделя начинается с воскресенья) [00,53] |
%w | Номер дня недели [0(Sunday),6] |
%W | Номер недели в году (нулевая неделя начинается с понедельника) [00,53] |
%x | Дата |
%X | Время |
%y | Год без века [00,99] |
%Y | Год с веком |
%Z | Временная зона |
%% | Знак '%' |