欢迎访问宙启技术站
智能推送

Python日期时间函数,管理时间变得简单!

发布时间:2023-06-25 13:04:31

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库提供的类和方法。使用这些函数和库,我们可以轻松地完成任何涉及日期和时间的任务。