在尝试逐行逐行拆分我的列表时,继续得到此拆分错误。
我有一个包含链接+20000链接的文件。这些链接位于名为"链接"
的列表中到目前为止我的代码:
import networkx as nx
# Create graph
network_graph = nx.Graph()
path = []
with open('paths_finished.tsv','r') as tsv:
paths = [line.strip().split('\t') for line in tsv]
newPath = paths[16:]
links = []
for line in newPath:
links.append(line[3:4])
newList = []
for i in links:
newList.append(i.split(';'))
print newList
链接列表的长度= 51318。 我想分开" ; "在我列表中的每个链接中。
例如,文件中的第一个链接是:
['14th_century;15th_century;16th_century;Pacific_Ocean;Atlantic_Ocean;Accra;Africa;Atlantic_slave_trade;African_slave_trade'],
然后我想逐字逐句拆分,所以我得到了:
['14th_century 15th_century 16th_century Pacific_Ocean Atlantic_Ocean Accra Africa Atlantic_slave_trade African_slave_trade'],
答案 0 :(得分:2)
第一件事 - 正如Martijn Pieters所说,你的缩进是关闭的。很难准确猜出你的意思,请修理它。但是:
paths = [line.strip().split('\t') for line in tsv]
line.split(' \ t')已经返回一个列表。您将该列表放入path
,因此path
是列表。您可以在此处迭代该列表列表:
for line in newPath:
links.append(line[3:4])
所以链接也将是一个列表列表。最后:
for i in links:
newList.append(i.split(';'))
您尝试为split
调用i
- 这是一个列表。 split是str
的成员函数,对于列表不存在 - 因此您的错误。