python csv - 导出数据并格式化颜色、文本格式等

3 投票
2 回答
6340 浏览
提问于 2025-04-15 19:28

我正在使用Python的csv库导出数据,效果还不错。经过网上搜索,我找不到关于如何格式化导出的数据的信息。

举个例子,我在Python中这样导出一行csv数据。

for hour_record in object_list:
            row = list()
            for field in fields:
                try:
                    row.append(getattr(hour_record, field))
                except:
                    pass
            writer.writerow(row)

现在我在想,如何在row.append调用中传递一些格式化的信息。例如,如果我想把文本格式化为红色,并确保它被格式化为数字等等。

有没有人知道这个是怎么回事?

2 个回答

0

与其使用csv格式,不如用numpy.genfromtxt和numpy.savetxt这两个工具:

>>> data = numpy.genfromtxt('mydata.txt', dtype=None)
>>> <-> work with the data recarray object
>>> numpy.savetxt('results.txt', data)

如果你查看help(numpy.savetxt),你会发现有一个'fmt'选项,可以让你指定输出的格式。

要输出颜色,你需要使用HTML,正如另一个回答中提到的,或者你可以使用一个叫做terminalcolor的模块,它专门用于输出到标准输出(STDOUT)。

3

CSV文件只用来存储简单的文本。如果你想在里面包含格式信息,比如字体颜色或大小,那你就得把HTML代码嵌入进去,或者把这些格式信息作为单独的字段添加进去。不管哪种方式,使用这些数据的人都需要懂得如何处理这些格式信息。

撰写回答