比如,已知二维列表[[a,b,c],[d,e],[f]],要求从每个子列表中选出一个元素进行相加,列出所有的组合情况,本题输出为adf,aef,bdf,bef,cdf,cef这6种可能。有很多这样的列表,子列表个数不一定相同,请教怎么用python进行处理
2 回答
小唯快跑啊
TA贡献1863条经验 获得超2个赞
>>>importitertools>>>s=[['a','b','c'],['d','e'],['f']]>>>[''.join(i)foriinitertools.product(*s)]['adf','aef','bdf','bef','cdf','cef']
犯罪嫌疑人X
TA贡献2080条经验 获得超4个赞
不多说,上代码#!/usr/bin/pythonarr=[['a','b','c',],['d','e',],['f','g','h']]result=[]length=1forrowinarr:length*=len(row)#初始化返回值数组长度foriinrange(0,length):result.append([])forrowinarr:i=0whileiforletterinrow: result[i].append(letter)i+=1forrowinresult:print",".join(row)
添加回答
举报
0/150
提交
取消