Python 将时间戳转换为指定格式日期
给定一个时间戳,将其转换为指定格式的时间。
注意时区的设置。
常用格式化代码说明
%Y
- 四位年份 (2024)%y
- 两位年份 (24)%m
- 月份 (01-12)%d
- 日期 (01-31)%H
- 小时 24小时制 (00-23)%I
- 小时 12小时制 (01-12)%M
- 分钟 (00-59)%S
- 秒 (00-59)%p
- AM/PM%A
- 星期几全名 (Monday)%a
- 星期几缩写 (Mon)%B
- 月份全名 (January)%b
- 月份缩写 (Jan)
当前时间
实例 1
import time
# 获得当前时间时间戳
now = int(time.time())
#转换为其他日期格式,如:"%Y-%m-%d %H:%M:%S"
timeArray = time.localtime(now)
otherStyleTime = time.strftime("%Y-%m-%d %H:%M:%S", timeArray)
print(otherStyleTime)
执行以上代码输出结果为:
2019-05-21 18:02:49
实例 2
import datetime
# 获得当前时间
now = datetime.datetime.now()
# 转换为指定的格式
otherStyleTime = now.strftime("%Y-%m-%d %H:%M:%S")
print(otherStyleTime)
执行以上代码输出结果为:
2019-05-21 18:03:48
指定时间戳
实例 3
import time
timeStamp = 1557502800
timeArray = time.localtime(timeStamp)
otherStyleTime = time.strftime("%Y-%m-%d %H:%M:%S", timeArray)
print(otherStyleTime)
执行以上代码输出结果为:
2019-05-10 23:40:00
输出不同格式的日期:
实例 4
import datetime
timestamp = 1710000000
dt_object = datetime.datetime.fromtimestamp(timestamp)
# 格式1:YYYY-MM-DD
print(dt_object.strftime("%Y-%m-%d")) # 输出:2024-03-09
# 格式2:MM/DD/YYYY
print(dt_object.strftime("%m/%d/%Y")) # 输出:03/09/2024
# 格式3:带星期几和月份全称
print(dt_object.strftime("%A, %B %d, %Y")) # 输出:Saturday, March 09, 2024
timestamp = 1710000000
dt_object = datetime.datetime.fromtimestamp(timestamp)
# 格式1:YYYY-MM-DD
print(dt_object.strftime("%Y-%m-%d")) # 输出:2024-03-09
# 格式2:MM/DD/YYYY
print(dt_object.strftime("%m/%d/%Y")) # 输出:03/09/2024
# 格式3:带星期几和月份全称
print(dt_object.strftime("%A, %B %d, %Y")) # 输出:Saturday, March 09, 2024
完整示例(含时区处理):
实例 5
from datetime import datetime, timezone
# 毫秒级时间戳(如 JavaScript 的 Date.now())
timestamp_ms = 1710000000000
# 转换为秒级并转 UTC 时间
timestamp_s = timestamp_ms / 1000
dt_utc = datetime.fromtimestamp(timestamp_s, tz=timezone.utc)
# 格式化为 UTC 时间字符串
formatted_utc = dt_utc.strftime("%Y-%m-%d %H:%M:%S UTC")
print(formatted_utc) # 输出:2024-03-09 00:00:00 UTC
# 转换为本地时间
dt_local = datetime.fromtimestamp(timestamp_s)
formatted_local = dt_local.strftime("%Y-%m-%d %H:%M:%S %Z")
print(formatted_local) # 输出取决于你的时区,例如:2024-03-08 16:00:00 PST
# 毫秒级时间戳(如 JavaScript 的 Date.now())
timestamp_ms = 1710000000000
# 转换为秒级并转 UTC 时间
timestamp_s = timestamp_ms / 1000
dt_utc = datetime.fromtimestamp(timestamp_s, tz=timezone.utc)
# 格式化为 UTC 时间字符串
formatted_utc = dt_utc.strftime("%Y-%m-%d %H:%M:%S UTC")
print(formatted_utc) # 输出:2024-03-09 00:00:00 UTC
# 转换为本地时间
dt_local = datetime.fromtimestamp(timestamp_s)
formatted_local = dt_local.strftime("%Y-%m-%d %H:%M:%S %Z")
print(formatted_local) # 输出取决于你的时区,例如:2024-03-08 16:00:00 PST
输出结果为:
2024-03-09 16:00:00 UTC 2024-03-10 00:00:00
点我分享笔记