получить список последних семи месяцев и список последних семи недель в Python - PullRequest
0 голосов
/ 10 октября 2019

Я новичок в Python и Framework Django, поэтому, пожалуйста, помогите мне. если номер текущей недели равен 41 (10.10.2009), поэтому последние семь недель означают 40, 39, 38, 37, 36, 35, 34 и т. д., если номер текущей недели равен 1, тогда нужны номера недель прошлого года, а также месяцы. Это все для меня, чтобы получить данные за последние 7 недель и данные за последние 7 месяцев Спасибо

Ответы [ 2 ]

0 голосов
/ 10 октября 2019

Вы можете использовать функцию ниже. Вам необходимо запустить функцию с указанием года, месяца и даты (например, func(2018,12,6))

from datetime import date,timedelta

def func(yr,mon,dt):
    entry = date(yr, mon,dt)
    for i in range(1, 8):
        back_week = entry - timedelta(weeks=i)
        print('Week ' + str(back_week.isocalendar()[1]))
        back_days = entry - timedelta(days=i)
        print('Date '+ str(back_days.day))
        print(back_days.strftime('%A'))
        print(back_days.strftime('%B'))

func(2018,12,6)

Выход при необходимости изменить код.

Week 48
Date 5
Wednesday
December
Week 47
Date 4
Tuesday
December
Week 46
Date 3
Monday
December
Week 45
Date 2
Sunday
December
Week 44
Date 1
Saturday
December
Week 43
Date 30
Friday
November
Week 42
Date 29
Thursday
November
0 голосов
/ 10 октября 2019

как то так?

In [5]: now = datetime.datetime.now()

In [6]: for i in range(1, 8):
   ...:     date = now - datetime.timedelta(weeks=i)
   ...:     print(date.isocalendar()[1])
   ...:
40
39
38
37
36
35
34
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...