Python列表生成式

2021-09-27 11:09:54 字數 1249 閱讀 9056

python裡面表示乙個列表,快速生成乙個列表可以用range()函式來生成。

對列表裡面的資料進行運算和操作,生成新的列表最高效快速的辦法,那就是列表生成式了。

b = range(1, 11)

c =

for i in b:

print(c)

結果:[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]

2.用列表生成式去實現

b = range(1, 11)

c = [x*x for x in b]

print(c)

結果:[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]

1.如果想對乙個列表裡面的資料篩選,比如:[1, 3, -3, 4, -2, 8, -7, 6],找出大於0的數,按正常思維可以for迴圈挨個判斷,符合條件的放到新的列表

c = [1, 3, -3, 4, -2, 8, -7, 6]

d =

for i in c:

if i > 0:

print(d)

結果:[1, 3, 4, 8, 6]

2.用列表生成式

c = [1, 3, -3, 4, -2, 8, -7, 6]

d = [x for x in c if x > 0]

print(d)

結果:[1, 3, 4, 8, 6]

前面列表生成式都只傳乙個引數x,如果有兩個列表如何去運算?

a = [1, 2, 3, 4, 5]

b = [「a」, 「b」, 「c」, 「d」, 「e」]

得到c = [「a1」, 「b2」, 「c3」, 「d4」, 「e5」]

a = [1, 2, 3, 4, 5]

b = ["a", "b", "c", "d", "e"]

# 多個引數列表生成式

c = [str(x)+str(y) for x, y in zip(b, a)]

print(c)

[『a1』, 『b2』, 『c3』, 『d4』, 『e5』]

Python 列表生成式

列表生成式即list comprehensions,是python內建的非常簡單卻強大的可以用來建立list的生成式。舉個例子,要生成list 1,2,3,4,5,6,7,8,9,10 可以用list range 1,11 list range 1,11 1,2,3,4,5,6,7,8,9,10 但...

python列表生成式

全都是重點!列表生成式即listcomprehensions,是python內建的非常簡單卻強大的可以用來建立list的生成式。舉個例子,要生成list 1,2,3,4,5,6,7,8,9,10 可以用range 1,11 range 1,11 1,2,3,4,5,6,7,8,9,10 但如果要生成...

python列表生成式

全都是重點!列表生成式即listcomprehensions,是python內建的非常簡單卻強大的可以用來建立list的生成式。舉個例子,要生成list 1,2,3,4,5,6,7,8,9,10 可以用range 1,11 range 1,11 1,2,3,4,5,6,7,8,9,10 但如果要生成...