You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python如何将字典列表中的UNIX时间戳转为UTC时间并导出CSV

字典列表UNIX时间戳转UTC时间并导出CSV实现方案

核心问题说明

  • 接口返回的time字段是13位毫秒级UNIX时间戳,直接写入CSV会显示为无意义长整数,需要先做格式转换
  • 原始返回数据中存在重复qty键,Python字典会自动保留最后一次赋值的有效值,无需额外去重处理
  • 原生CSV写入逻辑未指定编码和换行参数,容易出现乱码、空行问题

完整可运行代码

from csv import DictWriter
from datetime import datetime, timezone

# 获取原始订单数据
orders = client.get_my_sales(symbol='AI95')

# 批量转换时间戳为UTC格式字符串
for order in orders:
    # 毫秒级时间戳转秒级
    timestamp_sec = order['time'] / 1000
    # 转换为UTC时间并格式化为易读字符串
    order['time'] = datetime.fromtimestamp(
        timestamp_sec, 
        tz=timezone.utc
    ).strftime('%Y-%m-%d %H:%M:%S')

# 写入CSV文件
with open('testcsv.csv', 'w', encoding='utf-8', newline='') as outfile:
    writer = DictWriter(
        outfile,
        fieldnames=('time', 'symbol', 'orderId', 'price', 'qty')
    )
    writer.writeheader()
    writer.writerows(orders)

关键注意事项

  • 时间戳转换必须除以1000:接口返回的是毫秒级时间戳,直接传入fromtimestamp会得到远超出实际范围的错误时间
  • 打开文件时新增encoding='utf-8'避免中文或特殊字符乱码,新增newline=''避免Windows系统下CSV出现多余空行
  • 示例中时间格式化输出为年-月-日 时:分:秒格式,可根据需要自行调整strftime的格式字符串,比如需要毫秒精度可改为'%Y-%m-%d %H:%M:%S.%f'

转换结果校验

示例中两个时间戳转换后的UTC时间为:

  • 1657118024716 → 2022-07-06 14:33:44
  • 1657118030000 → 2022-07-06 14:33:50

内容的提问来源于stack exchange,提问作者Alex

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.27 15:48:44