六 三元表达式列表推导式生成器表达式

Posted Eric

tags:

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

一 三元表达式

二 列表推导式

 

三 生成器表达式

 

一 三元表达式

1 name=input(姓名>>: )
2 res=abc if name == lucy else jack
3 print(res)

 

二 列表推导式

#1、示例
egg_list=[]
for i in range(10):
    egg_list.append(鸡蛋%s %i)

egg_list=[鸡蛋%s %i for i in range(10)]

#2、语法
[expression for item1 in iterable1 if condition1
for item2 in iterable2 if condition2
...
for itemN in iterableN if conditionN
]
类似于
res=[]
for item1 in iterable1:
    if condition1:
        for item2 in iterable2:
            if condition2
                ...
                for itemN in iterableN:
                    if conditionN:
                        res.append(expression)

#3、优点:方便,改变了编程习惯,可称之为声明式编程

 

三 生成器表达式

 1 #1、把列表推导式的[]换成()就是生成器表达式
 2 
 3 #2、示例:生一筐鸡蛋变成给你一只老母鸡,用的时候就下蛋,这也是生成器的特性
 4 >>> chicken=(鸡蛋%s %i for i in range(5))
 5 >>> chicken
 6 <generator object <genexpr> at 0x10143f200>
 7 >>> next(chicken)
 8 鸡蛋0
 9 >>> list(chicken) #因chicken可迭代,因而可以转成列表
10 [鸡蛋1, 鸡蛋2, 鸡蛋3, 鸡蛋4,]
11 
12 #3、优点:省内存,一次只产生一个值在内存中

 

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

Python3 三元表达式列表推导式生成器表达式

三元表达式列表推导式生成器表达式递归匿名函数内置函数

三元表达式列表推导式生成器表达式递归匿名函数内置函数

三元表达式列表推导式生成器表达式递归匿名函数内置函数

Python:三元表达式列表推导式和生成器表达式

Python:三元表达式列表推导式和生成器表达式