python在list相加 求助
问题描述
a = [A,B,C,D,E,F]b = [a,b,c,d,e,f]如何变成c = [A+a,B+a,C+a,E+a,D+a,F+a, A+a,B+b,C+b,D+b,E+b,F+b,A+c,B+c,C+c,D+c,E+c,F+c....]
求大神指导~
问题解答
回答1:首先,你得把List里面的字母元素用单引号括起来,然后你要做的是一个列表生成式,多层表达式。
>>> a = [’A’,’B’,’C’,’D’,’E’,’F’]>>> b = [’a’,’b’,’c’,’d’,’e’,’f’]>>> [x+y for y in b for x in a][’Aa’, ’Ba’, ’Ca’, ’Da’, ’Ea’, ’Fa’, ’Ab’, ’Bb’, ’Cb’, ’Db’, ’Eb’, ’Fb’, ’Ac’, ’Bc’, ’Cc’, ’Dc’, ’Ec’, ’Fc’, ’Ad’, ’Bd’, ’Cd’, ’Dd’, ’Ed’, ’Fd’, ’Ae’, ’Be’, ’Ce’, ’De’, ’Ee’, ’Fe’, ’Af’, ’Bf’, ’Cf’, ’Df’, ’Ef’, ’Ff’]
列表生成式可以做运算,也可以做字符串的拼接这里有文档详细介绍https://docs.python.org/2/tut...
回答2:[x+y for y in b for x in a]回答3:
c = list(map(lambda i: a[i] + b[i], range(len(a)))回答4:
from itertools import product>>> a = [’a’, ’b’, ’c’]>>> b=[1, 2, 3]>>> c = list(product(a, b))>>> print(c)[(’a’, 1), (’a’, 2), (’a’, 3), (’b’, 1), (’b’, 2), (’b’, 3), (’c’, 1), (’c’, 2), (’c’, 3)]>>>
相关文章:
1. node.js - npm run dev报错2. angular.js - Angular 像这种重复判断的表达式 有什么好的解决办法吗?~3. 求救一下,用新版的phpstudy,数据库过段时间会消失是什么情况?4. 无法为JSP编译类:无法解析类型java.util.Map $ Entry。从所需的.class文件间接引用它5. PC 手机兼容的 编辑器6. javascript - 如何将一个长为365的数组对象按月份切割成12组?7. mysql - 仅仅只是把单引号与反斜杠转义不用prepare statement能否避免sql注入?8. node.js - npm安装模块时,在cmd上显示的是一条白线,白线前面是一天反斜线转圈圈,然后就出现npm ERR错误了,求帮助,谢谢9. css3不包括10. html - angularJS中switch切换开关按钮不能操作

网公网安备