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

'''

相关推荐
外收内放7 分钟前
Python基础语法练习题(69)
开发语言·python
TomEval11 分钟前
【测AI】第11篇:深度学习基础 —— 神经网络是怎么工作的
人工智能·python·深度学习·神经网络·机器学习·aigc
zhang-ge14 分钟前
python包和项目管理器uv在ubuntu下的安装与使用
开发语言·python·uv
for_ever_love__25 分钟前
LangChain 降级、重试与超时:让服务在模型抽风时还能用
python·自然语言处理·langchain·agent·超时·重试·with_retry
MoRanzhi120336 分钟前
第 8 篇 · 机器学习建模与实验评估:建模流程与对照实验
python·机器学习·scikit-learn·模型评估·交叉验证·shap·消融实验
棉猴1 小时前
玩游戏学Python9-算术运算符应用1
python·游戏·pygame·玩游戏·游戏编程
凤年徐1 小时前
【Python】Python 语法速通指南
开发语言·python
quantdash_cc1 小时前
量化数据清洗应该放在数据层还是策略层?从系统架构看清职责边界
开发语言·python·数据分析·系统架构·量化交易·股票数据·quantdash
梅雅达编程笔记1 小时前
Day 06 · 第一个 API 接口:从 Model 到 JSON
python·django·drf·后端开发·restful api·序列化器
yi0111 小时前
DAY28: LeetCode 111. 二叉树的最小深度
人工智能·笔记·python·算法·leetcode·二叉树·递归