我的列表如下所示:
[['\ufeff'],
['<dialog #1 (338)>'],
['02:48\tVšechny větrací otvory nesmí být zakryty'],
['02:50\tV přihrádkách na potraviny'],
['02:52\tNepoškoďte potrubní vedení chladícího média'],
['02:56\tPři definitivním postavení zařízení'],
['02:56\tPři konečném postavení zařízení'],
['02:57\tPři konečném postavení'],
['02:57\tPři konečném postavení'],
['02:58\tdefinitivním postavení'],
['02:58\tdefinitivním postavení'],
...........and so on.
看到第二行的“对话”了吗?它在整个文件中重复数万次。我想合并所有子列表,从第一个子列表包含单词“dialog”到最后一个子列表不包含该单词。所以我最终得到的子列表在开头只包含一个“dialog”单词
也可以(而且更方便)更改导入这些txt文件的方式。我使用这个代码:
dialogues1 = []
with open('dialogy1.txt', encoding="utf-8") as inputfile:
for line in inputfile:
dialogues1.append(line.splitlines())
也许有一种不同的加载文件的方法会给我相同的结果。有办法吗?谢谢
要移动包含
"dialog"
内容的所有列表,可以使用itertools.groupby
:输出:
编辑:关于上一条评论中所需的输出,此解决方案应该可以:
输出:
相关问题 更多 >
编程相关推荐