gpt4 book ai didi

python - 消除 ',' .join() 调用生成的双引号

转载 作者:太空宇宙 更新时间:2023-11-04 09:49:10 24 4
gpt4 key购买 nike

List_final 是我构建的全局变量,用于将数据推送为 csv 格式。

下面代码中的 key_values 返回双引号中的结果。所以我的最终列表有一个我试图删除的双引号。

for entry,value_all in csv_data.iteritems():

list_temp=[entry]
key_values = ','.join(value_all.itervalues())
str(key_values).replace('"', '')

list_temp.append(str(key_values))
list_final.append(list_temp)

with open('test.csv', 'w') as fp:
writer = csv.writer(fp,delimiter=',',quotechar='"')
writer.writerows(list_final)

输出:

2018-01-27T08:00:00.000Z,"11,14,16,65,234,7,7,574"
2018-01-28T08:00:00.000Z,"1095,141,1646,638,2360,6,6,576"

最佳答案

引号不是','.join 本身引入。重点是 CSV 作者看到一个带逗号的字符串,因此决定转义该字符串并将其用引号引起来。

但是根据示例输出,我认为您希望数据显示为单独的列。使用 CSV 编写器的想法是您不必自己进行字符串构造。如果你想把它写成单独的值,你可以使用:

for entry,value_all in csv_data.iteritems():
list_temp=[entry]
list_temp += value_all.itervalues()
list_final.append(list_temp)

with open('test.csv', 'w') as fp:
writer = csv.writer(fp,delimiter=',',quotechar='"')
writer.writerows(list_final)

或者我们可以使用列表理解:

list_final = [[entry, *value_all.itervalues()]
for entry,value_all in csv_data.iteritems()]

with open('test.csv', 'w') as fp:
writer = csv.writer(fp,delimiter=',',quotechar='"')
writer.writerows(list_final)

关于python - 消除 ',' .join() 调用生成的双引号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48560045/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com