我希望做一些非常简单的事情。只需将一个字符串(例如'december')转换为可以与MySQL一起使用的字符串(例如'12')。
目前我使用dict,
month_map = {
'december': '12',
'november': '11',
'october': '10',
'september': '09',
'august': '08',
'july': '07',
'june': '06',
'may': '05',
'april': '04',
'march': '03',
'february': '02',
'january': '01'
}
然后month_map.get('december').
标准python模块中是否已经存在任何可以实现此功能的函数?如果已经问过这个问题,我会道歉......我用搜索找到的问题看起来有点不同。
答案 0 :(得分:2)
它依赖于语言环境,但您可以使用strptime
完成此操作:
>>> import datetime
>>> datetime.datetime.strptime('december', '%B').month
12
>>> datetime.datetime.strptime('january', '%B').month
1
答案 1 :(得分:1)
答案 2 :(得分:1)
你可以做的一件事是:
>>> datetime.datetime.strptime('december', '%B').month
12
'%B'
将匹配当月的完整区域设置名称。
答案 3 :(得分:1)
在数据库中,您通常有查找表将字符串映射到其键值(通常是整数,有时是GUID)。几个月这可能不是什么大不了的事,因为每个人都知道第5个月是什么,但是如果你开始在客户端进行翻译以获得更多奇怪的事情,例如,将状态映射到整数,那么你做错了。
要严格说明,数据库应该在查找表中包含此映射,然后您应该使用它来进行翻译。