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

如何调整Python代码,使CSV行匹配目标字节字符串格式?

调整CSV写入格式以匹配字节计数直方图需求

现有写入代码

block_size = int(block_size)
data_block = data[:block_size]
encoded_data_block = base64.b64encode(data_block).decode("utf-8")
csv_writer.writerow([encoded_data_block, label])

格式差异

当前生成的CSV行格式:

b'a2pUuzNscSX+UaAz9KAMtls+OeN08DtLa4WYri76IouKLNp+iXaKntSqKBQZLqIdG/xt4GWiXD08nI

参考示例的CSV行格式:

b'x\x9c\x9c\xbd\xcb\x8e\x1cW\x96-8\xe7W\x18\x1c(\x88\x04<\x02\x0c\xea\x9d\x1aQ$\xf5*QR\x89\xcc\xd2\xbdU\xa8\x81\xb9\xdb\xf1p\x13\xcd\xcd<\xed\x11A\xd7(q\xd1

修改方案

你当前用Base64编码了字节块,导致CSV存储的是Base64字符串;而参考格式是原始字节对象的Python字符串表示。要匹配格式,直接替换编码逻辑:

修改后的代码

block_size = int(block_size)
data_block = data[:block_size]
# 用字节对象的字符串表示替代Base64编码
encoded_data_block = repr(data_block)
csv_writer.writerow([encoded_data_block, label])

读取还原说明

后续读取CSV时,可借助ast.literal_eval()将字符串还原为字节对象,再进行字节计数统计:

import ast
import csv

with open("your_data.csv", "r") as csv_file:
    reader = csv.reader(csv_file)
    for row in reader:
        data_str, label = row
        # 还原为字节对象
        data_block = ast.literal_eval(data_str)
        # 执行字节计数频率统计逻辑
        # ...

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.29 23:26:04