python列表推导式(扫盲)

 

1) 简单了解:

所谓的列表推导式,就是指的轻量级循环创建列表。

格式:

列表推导式的常见形式:

    my_list = [ item    for item in iterable]
    my_list: 列表名 (变量名,  属于标识符)
    item: 将要存放到列表中的内容
    for item in iterable:  非常标准的for循环表达式

    
    [expr for iter in iterable if cond_expr]
    expr: 将要存放到列表中的内容
    iter: 遍历的每一项内容
    iterable: 遍历的对象
    if cond_expr: 条件表达式, 只有满足当前条件的,才能存放到列表中.

 

例如:

my_list = [x*x for x in range(10)]
print(my_list)


my_list1 = [x**2 for x in range(6)]
print(my_list1)

结果:

[0, 1, 4, 9, 16, 25, 36, 49, 64, 81]
[0, 1, 4, 9, 16, 25]

例如:

list = [x for x in range(3, 19, 2)]  
print(list)

结果:

[3, 5, 7, 9, 11, 13, 15, 17]

2) 使用if的情况:

例如:

list = [x for x in range(3, 10) if x % 2 == 0]
print(list)

结果:

[4, 6, 8]

例如

list = [11, 10, 9, 8, 7, 6]
[x for x in list if x % 2]

结果

[11, 9, 7]

例如

list = [x for x in 'hello python' if x != ' ' and x != 'l']
print(llist)

结果

['h', 'e', 'o', 'p', 'y', 't', 'h', 'o', 'n']

注意:

列表推导式对整个列表进行迭代,必须生成所有数据,用于创建列表;

也就是说,当数据过于庞大的时候,会产生负面效应

 

posted @ 2018-05-03 10:35  沈强-1201  阅读(393)  评论(0编辑  收藏  举报