2024-05-19 15:04:41 发布
网友
我有个约会。如何在Python中将其转换为yyyyMMdd?
yyyyMMdd
例如,我需要将2002年11月20日转换为20021120
您可以使用datetime.datetime.strptime()以特定格式读取日期,然后使用.strftime()以所需格式将其写回。示例-
datetime.datetime.strptime()
.strftime()
>>> import datetime >>> datetime.datetime.strptime('20-Nov-2002','%d-%b-%Y').strftime('%Y%m%d') '20021120'
格式-
%d - 2 digit date%b - 3-letter month abbreviation%Y - 4 digit year%m - 2 digit month
%d - 2 digit date
%b - 3-letter month abbreviation
%Y - 4 digit year
%m - 2 digit month
有关不同支持格式的详细信息,请参见here。
您可以使用re模块执行此操作,如下所示:
re
import re text = '20-Nov-2002'.replace('Nov', '11') print(re.sub(r'(\d+)-(\d+)-(\d+)', r'\3-\1-\2', text))
输出:
2002-20-11
但是如果你想转换整个月,不仅仅是Nov到11。
Nov
11
您可以像这样使用datetime模块:
datetime
import re, datetime month = datetime.datetime.strptime('Nov', '%b').strftime('%m') text = '20-{month}-2002'.format(month=month) print(re.sub(r'(\d+)-(\d+)-(\d+)', r'\3-\1-\2', text))
输出是一样的。
您可以使用
datetime.datetime.strptime()
以特定格式读取日期,然后使用.strftime()
以所需格式将其写回。示例-格式-
有关不同支持格式的详细信息,请参见here。
您可以使用
re
模块执行此操作,如下所示:输出:
但是如果你想转换整个月,不仅仅是
Nov
到11
。您可以像这样使用
datetime
模块:输出是一样的。
相关问题 更多 >
编程相关推荐