Python - String.split() 使用分隔符 ',',但字符串中有价格也使用千位逗号

Python - String.split() using delimiter ',', but there is price in string also using comma in thousand

我正在尝试使用 Python 来解析 CSV 文件。我有一个这样的字符串:

"11/11/14","Buy","1,900",".40","-,760.00"

我想把它解析成这样的列表

但是,由于千位数字中有逗号分隔符,所以解析结果为

这是我的代码:

data = line.split(',')

使用,

data = line.strip('"').split('","')

价格没有 "Quote"

您可能需要查看 python 标准库中的 csv module。这将自动处理 CSV 元素中带引号的字符串。例如:

with open('eggs.csv', 'rb') as csvfile:
    spamreader = csv.reader(csvfile, delimiter=',', quotechar='\"')
    for row in spamreader:
        print(', '.join(row))

这将加载一个文件并逐行读取它,然后打印出以逗号分隔的每个元素的内容。结果应该符合您的需要。

改为在 "\",\"" 上拆分,然后假设分隔符中没有空格它会起作用,否则使用正则表达式允许空格。