我是靠谱客的博主 大胆网络,最近开发中收集的这篇文章主要介绍字母组合如何用python实现_python实现多列表组合算法,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

为解决生成两位字母的所有组合的数学问题,实现本程序的设计。为有同样需要的朋友提供帮助。

问题提出生成以字母开头的两位字母数字组合

例如1

2

3

4

5#已知

list1=['a','b']

list2=['a','b','1','2']

#目标

list3=['aa','ab','a1','a2','ba','bb','b1','b2']

问题解决正是有人不懈的奋斗和无私的奉献,才使得科技不断地进步,向那些提供共享知识的人,致敬

能分享,能开源的科技人,值得赞扬

网上一位牛人,设计了一个特别好的程序,直接拿来用了,表示感谢。1

2

3from functools import reduce

fn = lambda x, code=',': reduce(lambda x, y: [str(i)+code+str(j) for i in x for j in y], x)

# 直接调用fn(lists, code)

特别说明给出的方案中不仅仅局限于两个列表,可以是多个列表

基于应用驱动的目的,本程序将应用于生成字典,这也是研究这个问题的初衷

用到的reduce函数

描述

reduce() 函数会对参数序列中元素进行累积。函数将一个数据集合(链表,元组等)中的所有数据进行下列操作:用传给 reduce 中的函数 function(有两个参数)先对集合中的第 1、2 个元素进行操作,得到的结果再与第三个数据用 function 函数运算,最后得到一个结果。

语法

reduce() 函数语法:reduce(function, iterable[, initializer])

参数function — 函数,有两个参数

iterable — 可迭代对象

initializer — 可选,初始参数

返回值:返回函数计算结果。

实例1

2

3

4

5

6

7>>>def add(x, y) : # 两数相加

... return x + y

...

>>> reduce(add, [1,2,3,4,5]) # 计算列表和:1+2+3+4+5

15

>>> reduce(lambda x, y: x+y, [1,2,3,4,5]) # 使用 lambda 匿名函数

15

更多的python高阶函数

饮水思源

最后

以上就是大胆网络为你收集整理的字母组合如何用python实现_python实现多列表组合算法的全部内容,希望文章能够帮你解决字母组合如何用python实现_python实现多列表组合算法所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(64)

评论列表共有 0 条评论

立即
投稿
返回
顶部