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

10个实用的Python时间处理函数,让你的时间处理更轻松

发布时间:2023-05-19 20:40:34

Python是一种面向对象、解释型、动态数据类型的高级程序设计语言,它以简洁、易学、功能强大而受到广泛使用。

Python 中处理时间是一个需要经常操作的领域,Python 提供了大量的时间日期函数,这些函数可以轻松完成各种时间计算和时间转换。

本文将介绍 10 个实用的 Python 时间处理函数,包括日期和时间的格式化、时间戳转换、时间差计算、时区转换等,希望可以帮助大家更轻松地处理时间。

1、strftime():将时间转换为字符串

strftime() 是一个 Python 中的时间格式化函数,它以指定的格式将时间表示为字符串。

例如:

from datetime import datetime

now = datetime.now()

print(now.strftime("%Y-%m-%d %H:%M:%S"))

输出结果:

2022-02-23 09:56:21

其中 %Y 表示年份(4 位数字)、%m 表示月份、%d 表示日期、%H 表示小时(24 小时制)、%M 表示分钟、%S 表示秒。

2、strptime():将字符串转换为时间

strptime() 是 strftime() 的逆函数,它可以将指定格式的字符串转换为时间。

例如:

from datetime import datetime

str_time = '2022-02-23 09:56:21'

print(datetime.strptime(str_time, "%Y-%m-%d %H:%M:%S"))

输出结果:

2022-02-23 09:56:21

3、timestamp():将时间转换为时间戳

timestamp() 是 Python 中将时间转换为时间戳的函数,它可以将一个时间转换为 Unix 时间戳,Unix 时间戳是指自 1970 年 1 月 1 日 00:00:00 UTC 起至现在的秒数。

例如:

from datetime import datetime

now = datetime.now()

timestamp = datetime.timestamp(now)

print("Unix timestamp of now is ", timestamp)

输出结果:

Unix timestamp of now is  1645619041.2393723

4、fromtimestamp():将时间戳转换为时间

fromtimestamp() 是 timestamp() 函数的逆函数,它可以将一个 Unix 时间戳转换为时间。

例如:

from datetime import datetime

timestamp = 1645619041.2393723

time = datetime.fromtimestamp(timestamp)

print("Date time from Unix timestamp is ", time)

输出结果:

Date time from Unix timestamp is  2022-02-23 09:44:01.239372

5、timedelta():计算时间差

timedelta() 是 Python 中计算时间差的函数,它可以计算两个时间之间的差值,并以天、秒、微秒等单位返回时间差。

例如:

from datetime import datetime, timedelta

now = datetime.now()

tomorrow = now + timedelta(days=1)

print("Tomorrow is", tomorrow)

time_diff = tomorrow - now

print("Time diff is", time_diff)

输出结果:

Tomorrow is 2022-02-24 09:56:21.419752
Time diff is 1 day, 0:00:00

6、replace():替换时间

replace() 是 Python 中替换时间的函数,它可以替换时间中的年、月、日、时、分、秒等任意部分。

例如:

from datetime import datetime, timedelta

now = datetime.now()

tomorrow = now + timedelta(days=1)

tomorrow = tomorrow.replace(hour=10)

print("Tomorrow is", tomorrow)

time_diff = tomorrow - now

print("Time diff is", time_diff)

输出结果:

Tomorrow is 2022-02-24 10:56:21.116687
Time diff is 1 day, 1:00:00.000013

7、utcnow():获取 UTC 时间

utcnow() 是 Python 中获取 UTC 时间的函数,它可以获取当前的 UTC 时间。

例如:

from datetime import datetime

utc_time = datetime.utcnow()

print("UTC time is", utc_time)

输出结果:

UTC time is 2022-02-23 02:56:21.373911

8、astimezone():将时间转换为指定时区的时间

astimezone() 是 Python 中将时间转换为指定时区的时间的函数,它可以将一个时间转换为指定时区的时间。

例如:

from datetime import datetime
from pytz import timezone

now = datetime.now()

est = timezone('US/Eastern')

est_time = now.astimezone(est)

print("EST time is", est_time)

输出结果:

EST time is 2022-02-22 22:56:21.877985-05:00

9、utcfromtimestamp():将时间戳转换为 UTC 时间

utcfromtimestamp() 是 Python 中将时间戳转换为 UTC 时间的函数,它可以将一个 Unix 时间戳转换为 UTC 时间。

例如:

from datetime import datetime

timestamp = 1645619041.2393723

utc_time = datetime.utcfromtimestamp(timestamp)

print("UTC time from Unix timestamp is", utc_time)

输出结果:

UTC time from Unix timestamp is 2022-02-23 01:44:01.239372

10、sleep():暂停程序运行

sleep() 是 Python 中暂停程序运行的函数,它可以让程序暂停一段时间后再继续运行。

例如:

import time

print("Start")
time.sleep(2)
print("End")

输出结果:

Start
(程序暂停 2 秒后)
End

以上就是 10 个实用的 Python 时间处理函数,它们可以帮助我们更轻松地完成时间的各种操作。如果你要处理时间的问题,可以选择这些函数来提高效率。