【发布时间】:2017-09-19 06:57:16
【问题描述】:
我已经读取了 python 列表中目录中所有文件的名称,如下所示:
files = ['ch1.txt', 'ch2.txt', 'ch3_1.txt', 'ch4_2.txt', 'ch3_2.txt', 'ch4_1.txt']
我想要做的是将相似的文件分组为列表中的元组。上面的例子应该是这样的
files_grouped = ['ch1.txt', 'ch2.txt', ('ch3_1.txt', 'ch3_2.txt'), ('ch4_1.txt', 'ch4_2.txt')]
我尝试过的一种方法是将需要分组的元素从列表中分离出来
groups = tuple([file for file in files if '_' in file])
single = [file for file in files if not '_' in file]
我会创建一个新列表,将两者都附加。但是如何创建groups 作为ch3 和ch4 的元组列表,比如[('ch3_1.txt', 'ch3_2.txt'), ('ch4_1.txt', 'ch4_2.txt')] 而不是一个大元组?
【问题讨论】:
标签: python python-3.x list tuples