如何去除Python近似嵌套列表中的多余内层括号
Python列表内层括号去除方案
固定结构快速实现
针对你给出的固定列表结构(每个二级子列表第一个元素是嵌套列表、第二个元素是单个值),直接用列表推导式一行即可完成转换:
my_list = [[['A','B'],'C'],[['S','A'],'Q']] my_list = [item[0] + [item[1]] for item in my_list]
执行后my_list的输出就是你需要的[['A', 'B', 'C'], ['S', 'A', 'Q']]
通用兼容实现
如果实际使用场景中,二级子列表内的嵌套数量、位置不固定,可以用遍历判断的方式做兼容,适配更多不规则嵌套场景:
my_list = [[['A','B'],'C'],[['S','A'],'Q']] res = [] for sub_item in my_list: tmp = [] for elem in sub_item: # 元素为列表就做拓展操作,非列表就直接追加 tmp.extend(elem) if isinstance(elem, list) else tmp.append(elem) res.append(tmp) my_list = res
内容的提问来源于stack exchange,提问作者user15649753
相关产品推荐
相关产品推荐

