Python 多个列表元素之间的排列组合,不同列表元素之间的排列组合,构建排列组合迭代器,不同可迭代对象元素之间的排列组合,列表之间元素的组合方式

本文介绍了如何使用Python对多个列表中的元素进行排列组合,提供了两种方法:一是通过嵌套for循环实现,二是利用itertools.product函数。这两种方法能够帮助程序员有效地生成所有可能的组合,适用于数据处理和算法设计等场景。
部署运行你感兴趣的模型镜像

不同列表内的元素进行排列组合,实现方法:

例: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) 

 与上面不同的是,迭代器生成的结果是以元组的形式展现,如下如:

 

您可能感兴趣的与本文相关的镜像

Python3.11

Python3.11

Conda
Python

Python 是一种高级、解释型、通用的编程语言,以其简洁易读的语法而闻名,适用于广泛的应用,包括Web开发、数据分析、人工智能和自动化脚本

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

医学小达人

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值