как конвертировать формат текущего времени в Python - PullRequest
0 голосов
/ 19 декабря 2018

Я пытался использовать 'strftime ()' с "% j", чтобы получить номер текущего дня года (0-365):

daynow = ("%d"% (datetime.day))
daynum =  (time.strftime("%j", time.gmtime(daynow)))

print (daynum)

, но возвращает: Возникло исключение:Ошибка типа% d: требуется число, а не getset_descriptor

что это значит, что такое getset_descriptor и как я могу это исправить?

Ответы [ 3 ]

0 голосов
/ 19 декабря 2018

Попробуйте следующий код, чтобы получить день месяца, день года и неделю года:

from datetime import datetime,date
today = datetime.now()
day_of_the_month = ("%d"% (today.day))
day_of_year = today.timetuple().tm_yday
week_of_the_year = today.isocalendar()[1]
0 голосов
/ 19 декабря 2018

Это должно делать то, что вы хотите.При этом мы получаем количество дней между первым днем ​​года и сегодняшним днем, вычитая две даты, правильно отформатированные.

import datetime
from datetime import date

day = datetime.datetime.now().day
month = datetime.datetime.now().month
year = datetime.datetime.now().year

f_date = date(year, 1, 1)
l_date = date(year, month, day)
delta = l_date - f_date
print(delta.days)

Это даст 352 (так как сегодня 19.12.2008).

0 голосов
/ 19 декабря 2018

%d ищет номер.но datetime.datetime.day кормит в объекте

Out[18]: <attribute 'day' of 'datetime.date' objects>

Итак, получите дату сегодня.Затем используйте это, чтобы сделать .day

import datetime
import time

today = datetime.datetime.now()
daynum = ("%d"% (today.day))

print (daynum)

, чтобы получить результат 19

...