CSV 文件中的 Python 新行混淆

标签 python csv

我有以下 Python 代码。它读取一个 csv 文件并将第一列输出到一个新的 csv 文件。

但问题是在我的 csv 文件中除了用于创建新行的新行之外还有\n。但它们包含在双引号中。

比如像这样:

A, B, C,
D, "12
34", E,
F, G, H

所以我想我需要在某处添加 quotechar='"' 但我想不通。

f_in = open('source.csv')

fields = []

for line in f_in.readlines():
    fields.append([item.strip('\n') for item in line.split(',')])
f_in.close()

f_out = open('sourceNew.csv', 'w')

for i in range(len(fields)):
    if fields[i][0] != '':
        f_out.write(fields[i][0] + ',,\n')


f_out.close()

我如何区分真正的新行\n 和用双引号包裹的\n。

谢谢

最佳答案

使用 Python CSV模块:

import csv

records = []
reader = csv.reader(open('source.csv', 'rb'))

for record in reader:
    print record
    records.append(record)

希望对您有所帮助。

关于CSV 文件中的 Python 新行混淆,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13472879/

相关文章:

python - 导入 django_filters.rest_framework 错误

python - 如何为 Python 获取 "canonical unix shell"

mysql - 在 Bash 中将 CSV 转换为 MySQL 更新语句

python - CSV 到 MySQL 上传问题

python - 如何针对我的 keras 训练模型运行测试数据?

python - 在神经网络训练期间最大化一种损失并最小化另一种损失的正确方法是什么?

python - 从一些列标题中删除前 x 个字符

java - 如何在Java中循环并将相同的内容写入CSV文件

Python xml 到 csv

ruby - 如何使用 Ruby 将列标题写入 csv 文件?