5

我用一些奇怪的分隔符将数据制成表格(即用逗号分隔的值组,用制表符与其他值分隔):

A,345,567   56  67  test

是否有一种干净而巧妙的方法来处理以下任何一个中的多个分隔符:csv modulenumpy.genfromtxtnumpy.loadtxt

我找到了这样的方法,但我希望那里有更好的解决方案。理想情况下,我想使用 genfromtxt 和正则表达式作为分隔符。

4

1 回答 1

4

恐怕您要求的三个包裹中的答案是否定的。但是,您可以这样做replace('\t', ',')(或相反)。例如:

from StringIO import StringIO # py3k: from io import StringIO
import csv
with open('./file') as fh:
    io = StringIO(fh.read().replace('\t', ','))

reader = csv.reader(io)

for row in reader:
    print(row)
于 2012-12-23T15:31:48.610 回答