我可以将'sep ='行与标准CSV模块一起使用

时间:2017-02-20 19:14:47

标签: python csv

我有一些sep=,作为第一行的csv文件。

例如

sep=,
Col 1,Col 2,
11.01.2017 21:56,Some data
....

我需要阅读它并用csv模块编写它现在看起来像:

with open("file.csv", 'r', encoding='utf-8') as file:
    file.readline()
    fp = csv.DictReader(file, dialect='excel', delimiter=',')

写作时也一样:

with open("file.csv", 'w', encoding='utf-8') as file:
    file.writeline()
    fp = csv.DictWriter(file, dialect='excel', delimiter=',')

但是我想知道csv模块中是否有更多支持这种csv格式的标准方式?

1 个答案:

答案 0 :(得分:1)

当您调用file.readline()时,您可以删除&seff ='从值开始,然后将其分配给变量。然后,将该变量用作分隔符:

csv_sep = file.readline()[4:]
fp = csv.DictReader(file, dialect='excel', delimiter=csv_sep)