Я пытаюсь изменить выходное форматирование strptime и DateTime по умолчанию в своих функциях:time.strptime изменение выходного форматирования
def start_week_date(year, week):
format_string = "%i %i 1" % (int(year),int(week))
start = time.strptime(format_string, '%Y %W %w')
print datetime.date(start.tm_year, start.tm_mon, start.tm_mday)
return datetime.date(start.tm_year, start.tm_mon, start.tm_mday)
выход которого передается на другой:
for date_oncall in date_range(start_week_date(year,week), start_week_date(year,week+1)):
print date_oncall
def date_range(start_date, end_date):
"""Generator of dates in between"""
if start_date > end_date:
raise ValueError("Start date is before end date.")
while True:
yield start_date
start_date = start_date + datetime.timedelta(days=1)
if start_date >= end_date:
break
Есть ли элегантный способ изменить форматирование по умолчанию, поэтому, если день месяца или месяц < 10 он не получает «0» в начале? В основном вместо '03 -05-2012 'Я хотел бы получить «3-5-2012».
Большое спасибо за любые предложения.
С уважением, Якуб
Похоже, что это должно ответить на ваш вопрос. http://stackoverflow.com/questions/2309828/get-rid-of-leading-zeros-for-date-strings-in-python –
Привет Дэн, Спасибо за подсказку - я не нашел это нить перед тем. J. –