Python 的 datetime 包是用于处理日期和时间常用工具。学好以下五个技巧,就可以满足大部分日期时间处理需求。
datetime 包中的 date 对象是表示年、月、日的一组值,以及如何处理它们的函数集合。time 对象的结构类似,是具有小时、分钟、秒、微秒和时区的值。我们可以通过适当地选择这些值来表示任何时间。
获取时间
import datetime
# 创建时间对象
datetime1 = datetime.datetime.now()
# 输出年、月、日、时、分、秒
print(datetime1.year)
print(datetime1.month)
print(datetime1.day)
print(datetime1.hour)
print(datetime1.minute)
print(datetime1.second)
创建日期时间
可以使用 date、time 对象来创建日期和时间。使用 combine() 函数组合日期和时间。使用相应属性来调用年、月、日、时、分、秒等值。
import datetime
# 创建时间对象
time1 = datetime.time(7, 0)
# 创建日期对象
date1 = datetime.date(2023, 6, 1)
# 组合日期时间
datetime1 = datetime.datetime.combine(date1, time1)
# 输出时间
print(time1)
# 输出日期
print(date1)
# 输出日期、时间
print(datetime1)
# 输出年、月、日
print(date1.year)
print(date1.month)
print(date1.day)
# 输出时、分、秒
print(time1.hour)
print(time1.minute)
print(time1.second)
# 输出年、月、日、时、分、秒
print(datetime1.year)
print(datetime1.month)
print(datetime1.day)
print(datetime1.hour)
print(datetime1.minute)
print(datetime1.second)
时间戳
为了使日期和时间更易于使用,计算机中创建了 UNIX 纪元的概念。这是自从 1970 年 1 月 1 日 00:00 开始以来经过的秒数。这允许任何日期和时间可以由单个浮点数表示。唯一的缺点是它对人类读者来说并不直观。函数 timestamp() 和 fromtimestamp() 实现日期时间对象与 UNIX 纪元相互转换,以便于计算。
import datetime
# 创建时间对象
datetime1 = datetime.datetime.now()
# 转换为UNIX纪元
unix_datetime1 = datetime.datetime.timestamp(datetime1)
datetime2 = datetime.datetime.fromtimestamp(1723153760)
print(unix_datetime1)
print(datetime2)
weekday()
对于任何给定日期,可以使用weekday() 函数计算星期几。weekday() 函数将返回一个从 0 到 6 的数字,其中 0 是星期一,1 是星期二,依此类推,6 是星期日。
import datetime
# 创建时间对象
datetime1 = datetime.datetime.now()
weekday1 = datetime1.date().weekday()
print(weekday1)
将日期时间转换为字符串
当我们从文本文件中提取数据并希望将文本日期转换为日期时间对象时,当我们想要将 datetime 对象导出到文本文件时,可以使用 strptime() 和 strftime() 函数。在进行转换时,我们必须指定字符串的格式。“%Y”表示年份,“%m”表示两位数的月份,“%d”表示两位数的日期。
import datetime
# 将字符串转换为日期对象
datetime1 = datetime.datetime.strptime('2023-07-16', '%Y-%m-%d')
# 将日期对象转换为字符串
date_str = datetime1.strftime('%Y@%m@%d')
print(date_str) # 输出:2023@07@16
❝
文章创作不易,如果您喜欢这篇文章,请关注、点赞并分享给朋友。如有意见和建议,请在评论中反馈!
❞