三元表达式与列表推导式

目录

  • 三元表达式(掌握)
  • 列表推导式(掌握)

三元表达式(掌握)

条件成立时的返回值 if 条件 else 条件不成立时的返回值

x = 10
y = 20

print(f"x if x > y else y: {x if x > y else y}")
x if x > y else y: 20

列表推导式(掌握)

[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)
print(F"[i for i in range(10)]: {[i for i in range(10)]}")
[i for i in range(10)]: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
print(F"[i**2 for i in range(10)]: {[i**2 for i in range(10)]}")
[i**2 for i in range(10)]: [0, 1, 4, 9, 16, 25, 36, 49, 64, 81]

下面只是秀操作,不推荐使用,否则只有你自己看得懂了。

name_list = ['nick', 'sean', 'jason', 'tank']

print(
    f"[name if name=='nick' else name+'sb' for name in name_list]: {[name if name=='nick' else name+'sb' for name in name_list]}")
[name if name=='nick' else name+'sb' for name in name_list]: ['nick', 'seansb', 'jasonsb', 'tanksb']

原文地址:https://www.cnblogs.com/nickchen121/p/10778650.html

时间: 2024-10-08 22:04:44

三元表达式与列表推导式的相关文章

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

一 三元表达式.列表推导式.生成器表达式 1.三元表达式 name=input('姓名>>: ') res='SB' if name == 'alex' else 'NB' print(res) 2.列表推导式 #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 iterabl

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

一 三元表达式 二 列表推导式 三 生成器表达式 一 三元表达式 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 ite

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

Python3 三元表达式.列表推导式.生成器表达式 三元表达式 表达式中,有三个元素 name = input("请输入姓名: ")ret = '输入正确' if name == 'aaa' else '输入错误'print(ret)  列表推导式 #1.示例# 方法1egg_list1 = []for i in range(10): egg_list1.append('鸡蛋%s' % i)print(egg_list1) #方法2egg_list2 = ['鸡蛋%s' %i for

python——函数 20、三元表达式、列表推导式、生成器表达式

1.三元表达式 # 什么是三元表达式 三元:三个元素 x=1 y=2 if x>y: print(x) else : print(y) # 变为三元表达式: hhh=x if x>y else y print(hhh) # 简单明了 ———————————————————————————————————— def max2(x,y): if x>y: return x else : return y print(max2(1,5)) # 变为三元表达式: def max2(x,y): r

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

一.三元表达式的使用 name = 'alex' age = 20 if name == 'alex' else 22 print(age) 二.列表推导式(声明式编程) l = ['alex%s' %i for i in range(10) if i > 5] print(l) 三.生成器表达式 ball = ('球%s' %i for i in range(10)) print(ball) print(next(ball)) print(list(ball)) 原文地址:https://ww

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

两者的区别在于一个用的是(),另外一个用B[] 生成器表达式: G = (x**2 for x in range(5)) 列表推导式: L = [x**2 for x in range(5)]

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

列表推导式   [i** 2 for i in [1,2,3]] print(li) li2=[int(i/2) for i in range(0,7,2)] print(li2) 生成器表达式 # 生成器 表达式 简化代码 g=(i for i in range(5)) # 没有元组推导式 for i in g: print(i) 例子  0 list=[{'name':'alex','age':80},{'name':'egon','age':40},{'name':'neza','age'

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

生成器表达式: >>> s = (i for i in range(10)) >>> print(s) 结果: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] 列表推导式: >>> g = [i for i in range(10)] >>> print(g) 结果: <generator object <genexpr> at 0x0000026A0C17A318> 1.括号不一样 2.返回的值

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

本文档主要内容: 一 装饰器函数的信息打印 二 迭代器 三 生成器 四 生成器表达式和列表推导式 五 内置函数 一 装饰器函数的信息打印 一个函数一旦被装饰器给装饰后,这个函数的信息使用原来的命令打印的就是装饰器函数的信息了,如何做呢? from functools import wraps def logger(f): @wraps(f) def inner(*args, **kwargs): """ :param args: 函数名,密码 :param kwargs: 备