Python 多个列表元素之间的排列组合,不同列表元素之间的排列组合,构建排列组合迭代器,不同可迭代对象元素之间的排列组合,列表之间元素的组合方式
2023-09-27 14:20:36 时间
不同列表内的元素进行排列组合,实现方法:
例:list_01= ['a','b']
list_02 = ['c']
实现两个列表中(各抽一个元素)元素的排列组合,结果为:a+c,b+c两种结果。
示例:
data = [['小明','小王','小张','小红'],['患有','得了','患了'],['高血压','糖尿病','高血脂']]
实现data中各个列表之间的排列组合:
方法一,嵌套for循环实现:
data = [['小明','小王','小张','小红'],['患有','得了','患了'],['高血压','糖尿病','高血脂']]
result = [[]]
for list_pool in data:
lis = []
for i in result:
for j in list_pool:
lis.append(i+[j])
result = lis
print(result)
result为需要的结果:
方法二,构建排列组合迭代器:
itertools.product(*iterables, repeat=1) | 用来生成 *iterables 各元素之间的不同组合。 |
import itertools
res = itertools.product(['小明','小王','小张','小红'], ['患有','得了','患了'], ['高血压','糖尿病','高血脂'],repeat=1)
#结果转化为列表
result = list(res)
print(result)
与上面不同的是,迭代器生成的结果是以元组的形式展现,如下如:
相关文章
- Python四种常用的高阶函数,你会用了吗
- 【华为OD机试真题 python】 高矮个子排队【2022 Q4 | 100分】
- python笔记31-使用ddt报告出现dict() -> new empty dictionary dict(mapping) 问题解决
- 详解Python列表(list)的方法sort()的第一个参数key【简单清晰明了的讲解】
- 70 python - 列表推导式
- python flask 快速搭建 WEB 实战
- Python: threading.Lock threading.RLock
- python 错误 error: invalid command 'egg_info'
- 【python】+list列表操作(全)反转/排序/去重/截取
- python学习之把列表元素拼接成字符串的4种方法
- Python列表推导式
- Python基础入门-列表解析式
- python之理解super及MRO列表 ( 示例版 )
- python基础训练题1-列表操作
- python xlwings 插入公式,自动计算
- 学生python编辑2--反弹的小球
- Python 爬虫 之 爬取王者荣耀的英雄们所有大皮肤图片,并 json 形式保存英雄列表信息到本地
- 【Python】python 库分类大全
- 【python养成】:案例练习(判断闰年、删除奇数、偶数降序排序、因式分解、100以内奇数之和、1234组成的素数、分段函数计算、100以内的所有丑数)
- [Python] 代码缩进规则