CSV reader 在 python 中将三列值作为单个字符串返回

CSV reader returning three column value as a single string in python

我正在尝试读取包含以下数据的 CSV 文件

"27@21","","2725 abc dr"","","Mumbai","IN",""

使用下面的代码

with open(file, "r") as csv_file:
    reader = csv.reader(csv_file, delimiter=',')
    for row in reader:
        colValues = list(row)
        print(colValues)

它给出的输出为

['27@21', '', '2725 abc dr",",Mumbai"', 'IN', '']

如果您查看上面的粗体输出,它是三列输入的组合。

我希望此输出与给定的输入相同。

注意:我正在创建一个实用程序来处理任何带有意外特殊字符的 csv 文件,例如列值中任意位置的双引号,并创建新文件并删除此类字符。为此,我需要解决这个问题。

最后通过在 reader 方法中再添加一个参数 (quotechar) 来解决这个问题,如下所示,

reader = csv.reader(csv_file, delimiter=',', quotechar="'")

Input :  "27@21","","2725 abc dr"","","Mumbai","IN",""

Output : ['"27@21"', '""', '"2725 abc dr""', '""', '"Mumbai"', '"IN"', '""']

这是预期的输出,其中输入 csv 文件中的列数与输出列表相同。