问一个关于python打开文件的问题

假如文件夹f中有若干相同类型的文件,但是它们是按文件名来分类的,比如说py1_1.txt,py1_2.txt等等,不能确定f文件夹有多少文件,但是有共性的是文件名前三位相同的是一类,虽然都是txt估计还有gh_1,fg_1……,现在要遍历文件名,找出两个同类的来比如打印by1_1.txt,by1_2.txt随机打印两个,刚学python. 能把步骤详细解释一下最好。

import itertools as it

dirname = r'D:\f'

r = sorted([i for i in os.listdir(dirname) if i[-3:] == 'txt'])
r = map(lambda m: (m[0], list(m[1])), it.groupby(r, key = lambda x: x[: 2]))
res = [(i, j) for i,j in r if len(j) >= 2]
print(res)