Python 时间戳转时间

一、 10 位 时间戳 ,秒级 转换为时间

方式一:

python 复制代码
import time

timeStamp = 1717149862
timeArray = time.localtime(timeStamp)
timeStr = time.strftime("%Y-%m-%d %H:%M:%S", timeArray)
print(timeStr)

'''
输出:
2024-05-31 18:04:22
'''

方式二:

python 复制代码
import datetime

timeStamp = 1717149862
dateArray = datetime.fromtimestamp(timeStamp)
timeStr = dateArray.strftime("%Y-%m-%d %H:%M:%S")
print(timeStr)

# 转换为 UTC 时间,相差8小时
timeStamp = 1717149862
dateArray = datetime.utcfromtimestamp(timeStamp)
timeStr = dateArray.strftime("%Y-%m-%d %H:%M:%S")
print(timeStr) 


'''
输出:
2024-05-31 18:04:22
2024-05-31 10:04:22
'''

二、 13位时间戳转换为时间字符串

方式一:

python 复制代码
from datetime import datetime

def timestamp_to_strtime(timestamp: int):
    """将 13 位整数的毫秒时间戳转化成本地普通时间 (字符串格式)
    :param timestamp: 13 位整数的毫秒时间戳 (1717149892810)
    :return: 返回字符串格式 {str} '2024-05-31 18:03:41'
    """
    timeArray =  datetime.fromtimestamp(timestamp / 1000.0)
    strtime =timeArray.strftime('%Y-%m-%d %H:%M:%S.%f')  # .%f 带不带都可
    return strtime

timeStr = timestamp_to_strtime(1717149892810)
print(timeStr)


'''
输出:
2024-05-31 18:04:52.810000
'''

方式二:

python 复制代码
import datetime

def timestamp_to_str(timestamp: int, time_format: str = "%Y-%m-%d %H:%M:%S") -> str:
    """
    时间戳转换为时间字符串
    :param timestamp: 时间戳
    :param time_format: 时间字符串格式 default: %Y-%m-%d %H:%M:%S
    :return: 时间字符串
    Usage::
      >>> timestamp_to_str(1717149892810, "%Y-%m-%d")
      2024-05-31
      >>> timestamp_to_str(1717149892810)
      2024-05-31 18:04:52
      >>> timestamp_to_str(1717149892810, "%Y-%m-%d %H:%M:%S.%f")
      2024-05-31 18:04:52.000000

    """
    try:
    	# 13 位 时间戳,毫秒级
        datetime_type = datetime.datetime.fromtimestamp(timestamp // 1000)
        # 10 位 时间戳,秒级
        # datetime_type = datetime.datetime.fromtimestamp(timestamp)
        return datetime_type.strftime(time_format)
    except (TypeError, ValueError):
        raise ValueError("Invalid timestamp format!")

timeStr = timestamp_to_str(1717149892810)
print(timeStr)


'''
输出:
2024-05-31 18:04:52
'''

'''

参考:

时间戳转换

https://tool.lu/timestamp/

Python3日期与时间戳转换的几种方法

https://zhuanlan.zhihu.com/p/67950661

Python时间戳和时间类型及其互相转换

https://www.cnblogs.com/sablier/p/14251436.html

【python】 datetime、13位和10位时间戳、字符串的相互转换

https://blog.csdn.net/weixin_42221654/article/details/131477857

python时间相互转换

https://py-code.readthedocs.io/zh/latest/Python/time_utils/index.html

'''

相关推荐
兵慌码乱3 小时前
面向桌面端的资产管理系统分层架构设计与核心模块实现
python·系统架构·sqlite·pyqt5·数据库设计·桌面应用开发·mvc架构
hboot5 小时前
AI工程师第三课 - 机器学习基础
python·scikit-learn·kaggle
顾林海9 小时前
Agent入门阶段-编程基础-Python:流程控制
python·agent·ai编程
呱呱复呱呱12 小时前
Django CBV 源码解读:一个请求是怎么找到你的 get() 方法的
python·django
曲幽17 小时前
刚部署的 LibreTranslate 频频翻车?我掏出了 20 年前的 StarDict 词典,用 FastAPI 搭了个本地词典翻译 API
python·fastapi·web·translate·goldendict·libretranslate·stardict·pystardict
荣码17 小时前
用Streamlit给AI应用套个界面,10行代码出Web页面
java·python
兵慌码乱1 天前
基于Python+PyQt5+SQLite的药房管理系统实现:事务一致性与界面解耦全流程解析
python·sqlite·信号与槽·pyqt5·数据库设计·桌面应用开发·事务处理
金銀銅鐵1 天前
[Python] 体验用欧几里得算法计算最大公约数的过程
python·数学
FreakStudio1 天前
W55MH32L-EVB 上手测评:硬件 TCP/IP 加持的以太网单片机,MicroPython 零门槛开发
python·单片机·嵌入式·大学生·面向对象·并行计算·电子diy·电子计算机
用户0332126663671 天前
使用 Python 从零创建 Word 文档
python