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"
我想把它解析成这样的列表
- 元素 1 -> "11/11/14"
- 元素 2 -> "Buy"
- 元素 3 -> "1,900"
- 元素 4 -> "$10.40"
- 元素 5 -> "-$19,760.00"
但是,由于千位数字中有逗号分隔符,所以解析结果为
- 元素 1 -> "11/11/14"
- 元素 2 -> "Buy"
- 元素 3 -> "1
- 元素 4 -> 900
- 元素 5 -> "$10.40"
- 元素 6 -> "-$19
- 元素 7 -> 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))
这将加载一个文件并逐行读取它,然后打印出以逗号分隔的每个元素的内容。结果应该符合您的需要。
改为在 "\",\""
上拆分,然后假设分隔符中没有空格它会起作用,否则使用正则表达式允许空格。
我正在尝试使用 Python 来解析 CSV 文件。我有一个这样的字符串:
"11/11/14","Buy","1,900",".40","-,760.00"
我想把它解析成这样的列表
- 元素 1 -> "11/11/14"
- 元素 2 -> "Buy"
- 元素 3 -> "1,900"
- 元素 4 -> "$10.40"
- 元素 5 -> "-$19,760.00"
但是,由于千位数字中有逗号分隔符,所以解析结果为
- 元素 1 -> "11/11/14"
- 元素 2 -> "Buy"
- 元素 3 -> "1
- 元素 4 -> 900
- 元素 5 -> "$10.40"
- 元素 6 -> "-$19
- 元素 7 -> 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))
这将加载一个文件并逐行读取它,然后打印出以逗号分隔的每个元素的内容。结果应该符合您的需要。
改为在 "\",\""
上拆分,然后假设分隔符中没有空格它会起作用,否则使用正则表达式允许空格。