Python日期时间函数,管理时间变得简单!
Python是一种高级编程语言,拥有许多内置函数和库,可以轻松处理日期和时间。 在这篇文章中,我们将讨论如何在Python中使用日期和时间函数,以及如何使用Python库来管理时间。
Python日期时间函数
在Python中,我们可以使用内置的日期时间函数来处理日期和时间。在下面的示例中,我们将讨论一些常见的日期时间函数。
1. datetime.date(year, month, day)
此函数将返回一个日期对象,给定该日期的年份,月份和日期。以下是一个使用此函数的示例:
import datetime d = datetime.date(2019, 5, 20) print(d)
输出将是:2019-05-20。
2. datetime.time(hour, minute, second, microsecond)
此函数将返回一个时间对象,给定该时间的小时,分钟,秒和微秒。以下是一个使用此函数的示例:
import datetime t = datetime.time(12, 30, 45, 1000) print(t)
输出将是:12:30:45.001000。
3. datetime.datetime(year, month, day, hour, minute, second, microsecond)
此函数将返回一个日期时间对象,给定该日期和时间的年份,月份,日期,小时,分钟,秒和微秒。以下是一个使用此函数的示例:
import datetime dt = datetime.datetime(2019, 5, 20, 12, 30, 45, 1000) print(dt)
输出将是:2019-05-20 12:30:45.001000。
4. datetime.datetime.now()
此函数将返回当前日期和时间的日期时间对象。以下是一个使用此函数的示例:
import datetime now = datetime.datetime.now() print(now)
输出将是当前日期和时间的日期时间对象。
5. datetime.datetime.strptime(date_string, format)
此函数将返回一个日期时间对象,给定该日期的字符串表示形式和日期格式。以下是一个使用此函数的示例:
import datetime date_string = '2019-06-20 12:30:45' date_format = '%Y-%m-%d %H:%M:%S' dt = datetime.datetime.strptime(date_string, date_format) print(dt)
输出将是:2019-06-20 12:30:45。
Python日期时间库
参考文献:https://docs.python.org/3/library/datetime.html
Python内置datetime库提供了一组类和函数,用于处理日期和时间。以下是一些常用的功能:
1. date
date类表示日期(年,月,日)和提供有关日期的有用方法。以下是一些常用方法:
date.today():返回当前日期。 date.fromisoformat(string):从字符串创建日期。 date.min、date.max:给出日期可取的最大值和最小值。 date.weekday():返回星期几(0代表星期一,6代表星期天)。 date.isoweekday():返回ISO 8601周日期(1代表星期一,7代表星期天)。 date.strftime(format):将日期格式化为字符串。
以下是一些使用date类的示例:
import datetime
d = datetime.date(2022, 1, 1)
print(d)
# output: 2022-01-01
today = datetime.date.today()
print(today)
# output: current date
date_str = '2022-01-01'
date_obj = datetime.datetime.strptime(date_str, '%Y-%m-%d')
print(date_obj.date())
# output: 2022-01-01
# string format example
print(today.strftime('%Y-%m-%d'))
# output: 2022-06-10
2. time
time类表示一天中的一个时间(小时,分钟,秒,微秒)和提供有关时间的有用方法。以下是一些常用方法:
time(hour=0, minute=0, second=0, microsecond=0, tzinfo=None, *, fold=0):创建时间对象。 time.fromisoformat(time_string):从字符串创建时间。 time.min、time.max:给出时间可取的最大值和最小值。 time.strftime(format):将时间格式化为字符串。
以下是一些使用time类的示例:
import datetime
t = datetime.time(14, 30, 0)
print(t)
# output: 14:30:00
cur_time = datetime.datetime.now().time()
print(cur_time)
# output: current time
time_str = '13:00:00'
time_obj = datetime.datetime.strptime(time_str, '%H:%M:%S').time()
print(time_obj)
# output: 13:00:00
# string format example
print(cur_time.strftime('%H:%M:%S'))
# output: 14:30:00
3. datetime
datetime类表示日期和时间的组合,并提供有关日期和时间的有用方法。以下是一些常用方法:
datetime(year, month, day[, hour[, minute[, second[, microsecond[, tzinfo]]]]]):创建日期时间对象。 datetime.now():返回当前日期时间。 datetime.fromisoformat(date_string):从字符串创建日期时间。 datetime.min、datetime.max:给出日期时间可取的最大值和最小值。 datetime.strftime(format):将日期时间格式化为字符串。
以下是一些使用datetime类的示例:
import datetime
dt = datetime.datetime(2022, 1, 1, 14, 30)
print(dt)
# output: 2022-01-01 14:30:00
cur_dt = datetime.datetime.now()
print(cur_dt)
# output: current datetime
datetime_str = '2022-01-01 14:30:00'
datetime_obj = datetime.datetime.strptime(datetime_str, '%Y-%m-%d %H:%M:%S')
print(datetime_obj)
# output: 2022-01-01 14:30:00
# string format example
print(cur_dt.strftime('%Y-%m-%d %H:%M:%S'))
# output: 2022-06-10 14:30:00
4. timedelta
timedelta类表示时间间隔(天,秒,微秒)和提供时间算术的有用方法。以下是一些常用方法:
timedelta(days=0, seconds=0, microseconds=0, milliseconds=0, minutes=0, hours=0, weeks=0):创建时间间隔对象。 timedelta.total_seconds():返回时间间隔的总秒数。
以下是一些使用timedelta类的示例:
import datetime t1 = datetime.datetime(2022, 1, 1) t2 = datetime.datetime(2023, 1, 1) delta = t2 - t1 print(delta) # output: 365 days, 0:00:00 print(delta.total_seconds()) # output: 31536000.0
结论
在Python中,处理日期和时间变得非常容易。有许多日期和时间函数可供使用,以及datetime库提供的类和方法。使用这些函数和库,我们可以轻松地完成任何涉及日期和时间的任务。
