【问题标题】:How to import a file with delimiters irregular with the csv module in python?python - 如何使用python中的csv模块导入分隔符不规则的文件?
【发布时间】:2012-10-29 18:08:19
【问题描述】:

我想这是一个非常简单的问题,但直到现在对我来说都不是...... 我有一个包含这样列的文件:

1 2  3 4  5   3
6 7 -8 9  0   5
4 8 -4 6 -7   8

我在 python 中有这段代码:

import csv

MyValues = [] #create an empty list
values = csv.reader(open('myfile', 'rb'), delimiter=' ')
for row in values:
    MyValues.append(row[5] if len(row)>4 else None)
print MyValues

问题是分隔符不仅仅是一个空格,有时是两个或三个空格。直到现在我无法修复,即使使用嗅探器或方言例程...... 有人知道如何导入这些列吗?

【问题讨论】:

    标签: python list csv import delimiter


    【解决方案1】:

    不使用 csv 模块,只需在每一行使用str.split()

    MyValues = []
    for line in open('myfile'):
        row = line.split()
        MyValues.append(row[5] if len(row)>4 else None)
    print MyValues
    

    str.split()默认在空白处分割字符串,连续的空白字符将被视为单个分隔符。

    【讨论】:

    • 没问题,如果我的回答对您有帮助,您可以通过单击答案旁边的复选标记的轮廓accept it
    猜你喜欢
    • 2015-11-19
    • 2014-10-15
    • 2015-12-06
    • 1970-01-01
    • 2016-03-12
    • 1970-01-01
    • 1970-01-01
    • 2021-12-17
    • 1970-01-01
    相关资源
    最近更新 更多