Python csv.writer控件精度

tyc*_*din 1 python csv format precision

我正在使用标准的csv.writer

wr = csv.writer(f,csv.QUOTE_NONNUMERIC)
wr.writerows(output)
Run Code Online (Sandbox Code Playgroud)

我希望能够格式化csv文件,以便每列都有%3.4e.输出是一个二维列表.现在,它似乎是在存储值的任何精度中写出来的,这可以是可变的.我也不知道代码时每个维度的大小,具体来说,每行中有多少个元素,所以我不能简单地写出一个大格式的字符串.是否有一种简单的方法来使用csv.writer以一定的精度编写每个数值?

ACh*_*ion 6

您仍然可以使用格式字符串输出任意长度列表,但您可能希望使用csv.QUOTE_NONE:

wr = csv.writer(f, quoting=csv.QUOTE_NONE)
for i in output:
    wr.writerow(['{:3.4e}'.format(x) for x in i])
Run Code Online (Sandbox Code Playgroud)