1. 程式人生 > >python學習:推到列表

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])