Python - 按标签和新行分隔

时间:2017-01-30 22:15:53

标签: python split

我试图在Python中读取一个看起来像这样的文件:

hello\t\tsecondhello\n
this\t\tsecondthis\n
is\t\tsecondis\n
data\t\tseconddata\n

我只对每一行的第二条信息感兴趣,所以我试图摆脱这两个标签和新行。我试过这个:

documents = open("data.txt", "r").readlines()
for line in documents:
    splitted = line.strip().split("\t")
    print(splitted) 

但是这只给了我这样的列表对象:

['hello\t\tsecondhello']

我也看过这个被接受的答案,但它只给了我同样的新线路:splitting a string based on tab in the file

编辑:发现错误,输入文件中的格式错误。仍然,感谢你的帮助,人们

2 个答案:

答案 0 :(得分:2)

看起来你实际上已经转义了,而不是真正的标签。所以试试

line.strip().split("\\t\\t")

答案 1 :(得分:1)

这适用于您提供的数据:

data = documents.strip().split('\n')
wanted_data = [item.split('\t')[2] for item in data if item]