属性列中的分隔符字符

时间:2017-02-02 20:00:23

标签: python tab-delimited

我有一个Tab限制的文件。其中一列是文本输入,通常包含选项卡。

所以它就像

ID            Phone              Text                 Time
######        ########         blahblah \t\t i know   YYYY-MM-DD HH:MM:SS

因此,当我在(python)中读取文件并通过制表符分开时,它显然会让事情变得混乱。有没有办法定位特定的标签?说"分隔第一,第二和最后一个"在一条线?有没有一种有效的方法来删除文本字段中的选项卡?我可以用任何东西代替它们,a - ,空格,并不重要,它们并不重要。

1 个答案:

答案 0 :(得分:1)

如果您正在读行,并且您知道其他字段中没有标签,您可以执行以下操作:

f = open('your_file.txt','r')

id,phone,text,tm = [],[],[],[]
for i,line in enumerate(f):
    if i == 0:
        continue
    fields = line.strip().split('\t')
    id.append(fields[0])
    phone.append(fields[1])
    text.append('\t'.join(fields[2:-1]))
    tm.append(fields[-1])

f.close()

这也将保留文本字段中的标签。如果你想摆脱它们,你可以用不同的角色加入它们。