Python解析csv文件——用冒号代替逗号

标签 python parsing csv

我怀疑这是一个常见问题,但我似乎找不到答案。我正在尝试从 csv 文件中删除所有逗号并用冒号替换它们。我通常会为此使用 sed 或 vi,但我需要使用纯 python 实现。这是我到目前为止的想法:

import csv

with open("temp.csv", mode="rU") as infile:
    reader = csv.reader(infile, dialect="excel")    
    with open("temp2.txt", mode="w") as outfile:
        writer = csv.writer(outfile)
        for rows in reader:
            for parsed_item in rows:
                parsed_item = rows.replace(',', ':') # I can't do this with a list!
                writer.writerow(parsed_item)

谁能帮我解决这个问题?预先感谢您的帮助。

最佳答案

答案比您想象的要简单。您只需要为 csv.writer 设置分隔符:

import csv

row = #your data

with open("temp.csv", mode="rU") as infile:
    reader = csv.reader(infile, dialect="excel")    
    with open("temp2.txt", mode="w") as outfile:
        writer = csv.writer(outfile, delimiter=':')
        writer.writerows(rows)

您正在尝试用 替换 ,: 不会执行任何操作,因为该行已被 csv.reader.

关于Python解析csv文件——用冒号代替逗号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6630170/

相关文章:

python - 在 Python 中使用自定义函数解析方程式

java - 获取太多子节点无法获取属性

python - 获取索引错误: list assignment index out of range in python

python - Pyplot 交互式缩放

java - 您如何处理和解析 JPA 持久性异常以向用户提供有意义的消息

sql - 检查 Postgres 表中是否存在记录

ruby-on-rails - Rails CSV 导入文件的标题不在模型中

html - 如何使用imacros提取文本?

python - 如何在 python 中创建内存对齐缓冲区,如 C 中的 posix_memalign

Python,在列中拆分多个字符串