python中将月份名称转换为月份编号,反之亦然

问题描述

使用calendar模块创建一个反向字典(与任何模块一样,您将需要导入):

{month: index for index, month in enumerate(calendar.month_abbr) if month}

在2.7之前的Python版本中,由于该语言不支持dict理解语法,因此您必须

dict((month, index) for index, month in enumerate(calendar.month_abbr) if month)

解决方法

我正在尝试创建一个函数,该函数可以将月份数字转换为缩写的月份名称,或者将月份的缩写名称转换为月份的数字。我以为这可能是一个常见问题,但我无法在网上找到它。

我在考虑日历模块。我看到可以将月份号转换为缩写的月份名称calendar.month_abbr[num]。不过,我看不出有其他方法可以走。创建用于转换另一个方向的字典是处理此问题的最佳方法吗?还是有更好的方法将月份名称改为月份编号,反之亦然?