Python Tutorials

Python时间掌握:获取当前时间的完整指南

Spread the love

Python 提供了几种获取当前时间的方法,每种方法都有其自身的优缺点。本文将指导您学习三种常用的方法:使用datetimetimearrow库。

目录

使用datetime模块

datetime模块是Python标准库的一部分。要获取当前时间,可以使用datetime.now()


import datetime

now = datetime.datetime.now()
print(now) 

这将输出当前日期和时间。您可以访问各个组成部分:


year = now.year
month = now.month
day = now.day
hour = now.hour
minute = now.minute
second = now.second
microsecond = now.microsecond

print(f"当前时间是:{hour}:{minute}:{second}")

使用time模块

time模块以时间戳(自纪元以来的秒数)返回时间。


import time

timestamp = time.time()
print(timestamp) # 自纪元以来的秒数

这对于计算时间差很有用。要转换为可读格式,请使用datetime


import time
import datetime

timestamp = time.time()
current_time = datetime.datetime.fromtimestamp(timestamp)
print(current_time)

使用arrow

arrow库(pip install arrow)提供了一个更友好的界面,尤其是在时区和格式化方面:


import arrow

now = arrow.now()
print(now)

处理时区

对于时区感知操作,请将pytz库与datetime一起使用,或利用arrow的内置功能:


import datetime
import pytz

tz = pytz.timezone('America/Los_Angeles')
now = datetime.datetime.now(tz)
print(now)

#使用arrow
import arrow
pacific_time = arrow.now('US/Pacific')
print(pacific_time)

时间输出格式化

strftime()datetimearrow的格式化方法一起使用以进行自定义输出:


import datetime

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


import arrow
formatted_time = arrow.now().format("YYYY-MM-DD HH:mm:ss ZZ")
print(formatted_time)

结论

datetime通常推荐用于其易用性和包含在标准库中。time适用于低级时间戳操作,而arrow简化了时区处理和格式化,但需要额外安装。

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注