Python 解析文本文件不同行的有效方法

Python 解析文本文件不同行的有效方法,python,loops,Python,Loops,我有一个包含如下数据的文本文件: 1--1--100 2---1---200 3---1---100 1---2---300 2-2-100 3---2---400 我想提取第三列对应于第二列不同值的数据,例如在第三列中添加三个数字,对应于第二列中的数字1,等等。我可以逐行循环浏览文本,并在每行中找到第三列并添加它们。但这不是我想要的。我应该如何在Python中高效地执行它?使用itertools.groupby() 作为一个例子,我使用的是您确切的“数据结构”(stackoverflow问题中

我有一个包含如下数据的文本文件:

1--1--100

2---1---200

3---1---100

1---2---300

2-2-100

3---2---400


我想提取第三列对应于第二列不同值的数据,例如在第三列中添加三个数字,对应于第二列中的数字1,等等。我可以逐行循环浏览文本,并在每行中找到第三列并添加它们。但这不是我想要的。我应该如何在Python中高效地执行它?

使用
itertools.groupby()

作为一个例子,我使用的是您确切的“数据结构”(stackoverflow问题中的一堆文本):

结果是:

Lines that contain number 1 in second column:
1 --- 1 --- 100, 2 --- 1 --- 200, 3 --- 1 --- 100
Lines that contain number 2 in second column:
1 --- 2 --- 300, 2 --- 2 --- 100, 3 --- 2 --- 400
编辑:既然您编辑了问题,并说您有一个文本文件,那么您可以使用它来代替
数据结构
,它将起作用:

data_structure = open('myfile.txt')

代码的其余部分保持不变

数据结构在哪里?它是一个文件,一个列表,…?你尝试了什么,为什么不起作用。编辑您的问题并向我们显示代码。@roganjosh它是程序生成的文本文件的一部分。这就是文本?
data_structure = open('myfile.txt')