我有一个名为words.txt的word&文本文件。由冒号分隔的描述对,例如:
word1:description 1 bla bla bla
word2:description 2 blah blah
...
我想要一个像这样的结构:
[('word1', 'description 1 bla'), ('word2', 'description 2 blah')]
如果你认为另一个结构不同于元组列表更好只是告诉我...我会喜欢使用列表comprenhesion的解决方案,但我被困了。
答案 0 :(得分:3)
如何:
[line.split(':', 1) for line in open('words.txt')]
或
dict(line.split(':', 1) for line in open('words.txt'))
答案 1 :(得分:0)
data = []
for line in open('file.txt'):
data.append(tuple(line.strip().split(':')))
'tuple'仅用于将分割返回的列表更改为元组。
可选择执行:
data = dict(data)
之后将其改为单词:description dictionary,它可能更能代表你想要的东西。
答案 2 :(得分:0)
或者您可以执行以下操作
text = """
word1:description 1 bla bla bla
word2:description 2 blah blah
"""
[tuple(x.strip().split(':', 1)) for x in text.split('\n') if ':' in x]
答案 3 :(得分:0)
[tuple(line.partition(':')[0:3:2]) for line in open('file.txt')]