day14--列表推导式,生成器表达式

Posted lianghui-lianghui

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了day14--列表推导式,生成器表达式相关的知识,希望对你有一定的参考价值。

一,生成器表达式,列表推导式

列表推导式

循环模式:[变量(加工后的变量) for 变量 in iterable]

l2 = [i for i in range (1,14)]
l3 = ["python%s期" % i for i in range(1,14)]
print(l2)
print(l3)

小练习

# [‘技师0号‘,‘技师1号‘... ‘技师15号‘]
# [‘护士1号‘, ‘护士3号‘,‘护士5号‘, ...,‘护士13号‘]
l4 = ["技师%s号" % i for i in range(0,16)]
l5 = ["护士%s号" % i for i in range(1,14,2)]
print(l4)
print(l5)

优点: 节省代码

缺点: 不好排错

整体: 凡是用列表推导式构造的列表对象,用其他方式都可以构建,非常复杂的列表,列表的推导式是构建不出的

 

筛选模式: [变量(加工后的变量) for 变量 in iterable if条件]

# 10以内所有数的平方
l1 = [i*i for i in range(1,11) if i]
print(l1)
# 30以内所有能被3整除的数的平方
l2 = [i* for i in range(1,31) if i%3==0]
print(l2)
# 100 以内所有的奇数.
l3 = [i for i in range(1,101) if i%2==1]
print(l3)
#找出元素中有两个e的
names = [[Tom, Billy, Jefferson, Andrew, Wesley, Steven, Joe],
        [Alice, Jill, Ana, Wendy, Jennifer, Sherry, Eva]]
l2 = [name for i in names for name in i if name.count("e") == 2]
print(l2)

 

生成器表达式:  把列表推导式的中括号变为小括号

 

以上是关于day14--列表推导式,生成器表达式的主要内容,如果未能解决你的问题,请参考以下文章

day4_python之三元表达式列表推导式生成器表达式

day14

day14 列表推导式

day5--装饰器函数的信息打印,迭代器,生成器,列表推导式,内置函数

列表推导式和生成器表达式

列表推导式,生成器表达式