簡體   English   中英

如何從列表和字符串組合中打印csv而沒有空格分隔符?

[英]How to print csv from list and string combination without delimiter of space?

我的csv文件是使用表中的值創建的,如下所示:

with open(fullpath,'wb') as csvFile:
                    writer = csv.writer(csvFile,delimiter='|',
                                        escapechar=' ',
                                        quoting=csv.QUOTE_NONE)

string_values = 'abc|xyz|mno'

for obj in queryset.iterator():
     writer.writerow([
                 smart_str(obj.code),#code
                 smart_str(string_values),# string of values
                 ])

生成的csv應將結果輸出為:

code1|abc|xyz|mno

但是生成的是:

code1|abc |xyz |mno

創建csv時,無法從字符串中刪除空格。 無論如何。 字符串值是動態生成的,可以具有1個或多個字符串值。 我不能在沒有特殊說明的情況下使用quoting = csv.QUOTE_NONE,即空格。 請提出建議。

您不能只寫包含定界符且未轉義的字符串!

改為使用:

string_values = 'abc|xyz|mno'.split('|')

for obj in queryset.iterator():
     writer.writerow([smart_str(obj.code)] + string_values)

IOW, writerow一個字符串列表 ,然后讓writer在列表中的字符串之間插入定界符!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM