0

我正在尝试使用 Python 读取文件,我想在其中分隔最后一列。但显然,根据len(data)len(labels),对于每次迭代,都将两个元素添加到datalabels中。该文件本身包含常规\n换行符,并且不包含任何其他不可打印的字符。

def read_data(filename):
    print 'Start reading \"' + filename + '\"..'
    f = open(filename)
    data = labels = []
    for line in f:
            line = line.strip().split(',')
            labels.append(int(float(line[-1])))
            data.append([int(x) for x in (line[:-1])])
    f.close()
    print 'Finished reading.'
    return data, labels

我有点卡在这里,一些调试已经有一段时间没有取得成果了。有任何想法吗?

4

1 回答 1

2
data = labels = []

这将创建一个列表,当您这样做时labels.append(...)data.append(...)您将追加到同一个列表。

你应该做:

data = []
labels = []
于 2013-10-21T09:21:24.643 回答