2016-12-12 1 views
-3

Я хочу извлечь определенные даты из календаря. Например, с датой начала - 02/01/2017, и этот день является понедельником, я хочу добавить дату в пустой список, а если в день (с понедельника по четверг), я хочу добавить к этому 8 дней дату и добавьте эту дату в список. Если в пятницу, добавьте 3 дня к списку.Я хочу извлечь определенные даты из календаря IN PYTHON, пожалуйста

Положите это, если дата начала - понедельник, следующий вторник, среда после этой недели и четверг, а затем пятница ... каждую неделю, увеличивайте день и добавьте его в список, но если в пятницу, добавьте дату понедельника к списку.

+1

Можете ли вы после того, что вы пробовали до сих пор ? –

+0

Я все еще нахожусь на грани попыток выяснить, с чего начать, я попытался импортировать дату и узнать день сегодня, а затем вернуться назад, чтобы добавить 7 дней к дате, но не думаю, что это сработает –

ответ

0

Пакет pandas не требуется, но если вам когда-либо понадобится вводить дату через raw_input(), это хороший инструмент для обработки проблем с форматированием только с одной строкой кода. (2016/12/12 против 12-12-16 и т.д.)

Если я правильно понимаю ваш вопрос, это должно сделать то, что вы хотите:

from datetime import timedelta 
import pandas as pd 

dates = [] 
start_date = pd.to_datetime(raw_input('Enter Start Date: ')) 
dates.append(start_date.strftime('%x')) 

if start_date.weekday() < 4: 
    add_date = start_date + timedelta(8) 
    dates.append(add_date.strftime('%x')) 
elif start_date.weekday() == 4: 
    add_date = start_date + timedelta(3) 
    dates.append(add_date.strftime('%x')) 
else: 
    print 'Error: Start Date is on a weekend.' 

print dates 
+0

Для некоторых Причина, по которой я продолжаю получать глупые ошибки, такие как объект «str», не имеет атрибута «strftime», но это помогло мне многое! Спасибо! –

+0

Ах, да, знание типа данных всегда важно, потому что у них разные встроенные функции. 'strftime' является функцией объектов datetime. Объект datetime является численным, поэтому strftime преобразует объект в строку, учитывая предоставленную строку формата. Например, «% x» заставляет дату-время отображаться как формат 12/12/2016. Посетите [http://strftime.org/](http://strftime.org/) для получения дополнительной информации о строках формата. –

Смежные вопросы