我有这个 tsv 文件,其中包含一些链接路径,每个链接由“;”分隔我想使用:
在下面的例子中我们可以看到文件中的文本是分开的 我只想通读最后一列,这是一条以“14th”开头的路径
6a3701d319fc3754 1297740409 166 14th_century;15th_century;16th_century;Pacific_Ocean;Atlantic_Ocean;Accra;Africa;Atlantic_slave_trade;African_slave_trade NULL
3824310e536af032 1344753412 88 14th_century;Europe;Africa;Atlantic_slave_trade;African_slave_trade 3
415612e93584d30e 1349298640 138 14th_century;Niger;Nigeria;British_Empire;Slavery;Africa;Atlantic_slave_trade;African_slave_trade
我想以某种方式将路径分成这样的链:
['14th_century', 'Niger', 'Nigeria'....]
我如何读取文件并删除前 3 列以便我只得到最后一列?
更新:
我已经试过了:
import re
with open('test.tsv') as f:
lines = f.readlines()
for line in lines[22:len(lines)]:
re.sub(r"^\s+", " ", line, flags = re.MULTILINE)
e_line = line.split(' ')
real_line = e_line[0]
print real_line.split(';')
但问题是它没有删除前 3 列?
最佳答案
如果第一个之间的分隔符只是一个空格而不是一系列空格或制表符,你可以这样做
with open('file_name') as f:
lines = f.readlines()
for line in lines:
e_line = line.split(' ')
real_line = e_line[3]
print real_line.split(';')
关于python从tsv文件链接一个列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22907926/