使用Python处理日期和时间的函数:datetime、strftime、strptime等
在Python中,处理日期和时间通常需要使用datetime、strftime、strptime等函数。这些函数都是Python标准库中的模块,可以直接通过import引入使用。
datetime模块
datetime模块提供了一些用于处理日期和时间的类和函数。其中最常用的是datetime类。这个类表示一个具体的日期和时间。使用datetime类可以创建表示当前日期和时间的对象,也可以从字符串中解析日期和时间。下面是一些常用的datetime类方法:
1. datetime.now()方法:返回当前日期和时间的datetime对象。
import datetime now = datetime.datetime.now() print(now)
输出:2022-08-25 13:24:10.112842
2. datetime.strptime()方法:将一个日期和时间的字符串转换为datetime对象。
import datetime date_str = '2022-08-25 13:24:10' date_format = '%Y-%m-%d %H:%M:%S' date_obj = datetime.datetime.strptime(date_str, date_format) print(date_obj)
输出:2022-08-25 13:24:10
3. datetime.strftime()方法:将datetime对象格式化为字符串。
import datetime
date_str = '2022-08-25 13:24:10'
date_format = '%Y-%m-%d %H:%M:%S'
date_obj = datetime.datetime.strptime(date_str, date_format)
formatted_date = date_obj.strftime('%d-%m-%Y')
print(formatted_date)
输出:25-08-2022
strftime和strptime函数
strftime函数是datetime模块中的一个方法,用于将datetime对象格式化为字符串。strptime函数也是datetime模块中的一个方法,用于将字符串解析为datetime对象。这两个函数可以相互补充,方便处理日期和时间字符串。
strftime函数常用格式化字符:
'%Y' – 4位数的年份
'%m' – 2位数的月份(01-12)
'%d' – 2位数的日(01-31)
'%H' – 24时制的小时数(00-23)
'%M' – 分钟数(00-59)
'%S' – 秒数(00-59)
下面是strptime和strftime的一些例子:
import datetime
# 将字符串转为datetime对象
date_str = '2022-08-25 13:24:10'
date_format = '%Y-%m-%d %H:%M:%S'
date_obj = datetime.datetime.strptime(date_str, date_format)
print(date_obj)
# 格式化datetime对象
formatted_date = date_obj.strftime('%d-%m-%Y')
print(formatted_date)
输出:
2022-08-25 13:24:10 25-08-2022
timedelta函数
timedelta函数可以用于在datetime对象上进行日期和时间的加减操作,例如计算一个日期和另一个日期之间的天数差。
下面是timedelta函数的例子:
import datetime # 计算今天和明天的日期差 today = datetime.date.today() tomorrow = today + datetime.timedelta(days=1) delta = tomorrow - today print(delta.days)
输出:
1
以上就是Python处理日期和时间的一些基本函数的用法。学会这些函数以后,就可以方便地在Python中处理各种日期和时间问题了。
