转换字符串和日期是Python开发中常见的任务。Python提供了多种函数和模块来转换字符串和日期。下面是Python实现字符串和日期相互转换的方法的完整攻略:
1. 将字符串转换为日期
- 使用
datetime
模块进行转换
在Python中可以使用datetime
模块将字符串转换为日期。datetime.strptime
函数可以将指定格式的字符串转换为日期类型。下面是一个示例。
from datetime import datetime
# 将字符串转换为日期
date_str = '2021-11-10'
date = datetime.strptime(date_str, '%Y-%m-%d')
print(type(date))
print(date)
输出结果:
<class 'datetime.datetime'>
2021-11-10 00:00:00
在上面的示例中,我们使用了datetime.strptime
函数将字符串date_str
转换为日期类型。指定的日期格式为%Y-%m-%d
,表示年份、月份和日期分别为4位数、2位数和2位数。
- 使用
dateutil
模块进行转换
使用dateutil
模块也可以将字符串转换为日期,这个模块比datetime
更加灵活,其parse
函数可以自动识别日期格式。下面是一个示例。
from dateutil.parser import parse
# 将字符串转换为日期
date_str = '10-Nov-2021'
date = parse(date_str)
print(type(date))
print(date)
输出结果:
<class 'datetime.datetime'>
2021-11-10 00:00:00
在上面的示例中,我们使用了dateutil.parser.parse
函数将字符串date_str
转换为日期类型。由于字符串date_str
中的日期格式为10-Nov-2021
,parse
函数可以自动识别日期格式并进行转换。
2. 将日期转换为字符串
- 使用
strftime
函数进行转换
使用strftime
函数可以将日期类型转换为指定格式的字符串。下面是一个示例。
from datetime import datetime
# 将日期转换为字符串
date = datetime.now()
date_str = date.strftime('%Y-%m-%d %H:%M:%S')
print(type(date_str))
print(date_str)
输出结果:
<class 'str'>
2021-11-10 15:20:47
在上面的示例中,我们使用了datetime.strftime
函数将当前日期转换为指定格式的字符串。指定的日期格式为%Y-%m-%d %H:%M:%S
,表示年份、月份、日期、小时、分钟和秒数分别为4位数、2位数、2位数、2位数、2位数和2位数。
- 使用
isoformat
函数进行转换
使用isoformat
函数可以将日期类型转换为ISO格式的字符串。下面是一个示例。
from datetime import datetime
# 将日期转换为字符串
date = datetime.now()
date_str = date.isoformat()
print(type(date_str))
print(date_str)
输出结果:
<class 'str'>
2021-11-10T15:20:47.943979
在上面的示例中,我们使用了datetime.isoformat
函数将当前日期转换为ISO格式的字符串。
结论
Python提供了多种函数和模块来转换字符串和日期,我们可以根据需要选择相应的函数和模块进行转换。在使用datetime
模块进行转换时,需要指定日期的格式;而在使用dateutil
模块进行转换时,可以自动识别日期格式,比较灵活。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:python实现字符串和日期相互转换的方法 - Python技术站