python學習:推到列表
1,列表推到
>>> listone=[1,2,3]
>>> listtwo = [2*i for i in listone if i>1]
>>> print(listtwo)
[4, 6]
>>>
>>> print([m+n for m in 'abc' for n in '123'])
['a1', 'a2', 'a3', 'b1', 'b2', 'b3', 'c1', 'c2', 'c3']
>>>
>>> d={'x':'A','y':'B','z':'C'}
>>> print([k+'='+'v' for k,v in d.items()])
['x=v', 'y=v', 'z=v']
>>>
,2:綜合列表
>>> a=[[1,2,3],[4,5,6],[7,8,9],[10,11,12]]
>>> print([[j[i] for j in a] for i in range(3)]
... )
[[1, 4, 7, 10], [2, 5, 8, 11], [3, 6, 9, 12]]
推到列表不是特別熟悉:抽時間好好琢磨一下
寫成正常的是:
a=[[1,2,3],[4,5,6],[7,8,9],[10,11,12]]
for i in range(3):
for j in a:
print(j[i])
a=[[1,2,3],[4,5,6],[7,8,9],[10,11,12]]
print ([[i[j] for j in [1,2]]for i in a])
輸出結果:
>>> print([[i[j] for j in [1,2]] for i in a])
[[2, 3], [5, 6], [8, 9], [11, 12]]
a=[[1,2,3],[4,5,6],[7,8,9],[10,11,12]]
正常的書寫
for i in a:
for j in [1,2]:
print(i[j])