【发布时间】:2012-04-08 10:55:41
【问题描述】:
如何重写以下子句:
if u'января' in date_category['title']:
month = 1
elif u'февраля' in date_category['title']:
month = 2
elif u'марта' in date_category['title']:
month = 3
elif u'апреля' in date_category['title']:
month = 4
elif u'мая' in date_category['title']:
month = 5
elif u'июня' in date_category['title']:
month = 6
elif u'июля' in date_category['title']:
month = 7
elif u'августа' in date_category['title']:
month = 8
elif u'сентября' in date_category['title']:
month = 9
elif u'октября' in date_category['title']:
month = 10
elif u'ноября' in date_category['title']:
month = 11
elif u'декабря' in date_category['title']:
month = 12
只是看起来很丑。
【问题讨论】:
-
@Marcin 当然。它是一个解析器,我有一个带有俄罗斯日期的字符串。我
strptime()不适用于这些。date-util包也不起作用。我正在用简单的正则表达式解析一天,现在我需要以某种方式解析月份。下一个字符串只需要解析月份和日期并创建日期时间对象。 -
你怎么检查月份是否在 date_category['title'] 中,你可以只检查月份列表中的月份索引吗?
-
@Marcin 一月的俄语 %B 是
'январь','January, 23'是'23 января',所以这行不通。 -
@jamylak date_category['title'] 不仅包含月份,还包含其他一些信息。
-
@Shark 我很确定您不了解 python 日期解析的工作原理。
%B仅指月份,如果您正确设置语言环境,它将处理俄罗斯日期。