python将字符转换成列表
python类中两个列表实例如何相加或相减?
python类中两个列表实例如何相加或相减?
a[[a,1],[b,2],[c,3]]b[[a,0],[b,1],[c,1]]c[[p[0][0],p[0][1] p[1][1]] for p in zip(a,b)]print(c)
列表生成式怎么写?
列表生成式的写法是:
1、列表生成式即List Comprehensions,是Python内置的非常简单却强大的可以用来创建list的生成式。
2、举个例子,要生成list [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]可以用list(range(1, 11)):
gtgtgt list(range(1, 11)) [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] 1212
3、但如果要生成[1x1, 2x2, 3x3, …, 10x10]怎么做?方法一是循环:
gtgtgt L [] gtgtgt for x in range(1, 11): ... (x * x) ... gtgtgt L [1, 4, 9, 16, 25, 36, 49, 64, 81, 100] 12345671234567
4、而列表生成式则可以用一行语句代替循环生成上面的list:
gtgtgt [x * x for x in range(1, 11)] [1, 4, 9, 16, 25, 36, 49, 64, 81, 100] 1212
5、写列表生成式时,把要生成的元素x * x放到前面,后面跟for循环,就可以把list创建出来,十分有用,多写几次,很快就可以熟悉这种语法。
6、for循环后面还可以加上if判断,这样我们就可以筛选出仅偶数的平方:
if在for后面,含义是筛选
gtgtgt [x * x for x in range(1, 11) if x % 2 0] [4, 16, 36, 64, 100] 1212
7、还可以使用两层循环,可以生成全排列:
有趣
gtgtgt [m n for m in #39ABC#39 for n in #39XYZ#39] [#39AX#39, #39AY#39, #39AZ#39, #39BX#39, #39BY#39, #39BZ#39, #39CX#39, #39CY#39, #39CZ#39] 1212
三层和三层以上的循环就很少用到了。