python列表表示式

2021-10-06 11:05:49 字數 1223 閱讀 9885

對於新手來說,生成乙個新的列表,他可能會使用for 迴圈,但是for迴圈一般來說是要少用的(因為比較慢),那麼如何不使用for迴圈生成乙個新的列表呢?那就需要用到列表表示式了,例子如下:

#生成乙個從0到9的列表

a=[x for x in

range(10

)]print

(a)>>

>>[0

,1,2

,3,4

,5,6

,7,8

,9]

如果生成的列表每乙個元素是二元的呢?

a=

[(x,y)

for x in

range(3

)for y in

range(3

)]print

(a)>>

>>[(

0,0)

,(0,

1),(

0,2)

,(1,

0),(

1,1)

,(1,

2),(

2,0)

,(2,

1),(

2,2)

]

這樣會生成3*3=9個元素

如果是需要從list1中選擇部分資料生成list2呢?只需要在列表表示式裡面加乙個if條件

list1=

[x for x in

range(10

)]list2=

[x for x in list1 if x<5]

print

(list2)

>>

>>[0

,1,2

,3,4

]

當然,元素是二元時也可以篩選

list1=

[(x,y)

for x in

range(3

)for y in

range(3

)]list2=

[(x,y)

for x in

range(3

)for y in

range(3

)if x<

1and y<2]

print

(list2)

>>

>>[(

0,0)

,(0,

1)]

python列表表示式

將兩個列表中不相等的元素組合起來的不同寫法 list 1 x,y for x in 1 2,3 for y in 3 1,4 if x y print list 1 等價於 list 1 for x in 1 2,3 for y in 3 1,4 if x y x,y print list 1 注意...

python列表表示式

expression for i in iterable if condition expression 就是對每乙個元素的具體操作表示式 iterable是某個可迭代物件,如列表,元組或字串等 if condition 是對每乙個元素做分支判斷,如果條件符合,則expression操作對應的元素....

公用表表示式

公用表表示式 common table expressions 假設我們有乙個100w條資料的訂單表,需要分頁查詢。declare rownumber asint,pagenumber asint set rownumber 5 set pagenumber 2 with orderedorders...