python3 三元表达式,列表解析

三元表达式
x=2
y=3

if x > y:
    print(x)
else:
    print(y)

res=‘aaaaa‘ if x > y else ‘bbbbbbb‘     #三元表达式
print(res)

def max2(x, y):
#     if x > y:
#         return x
#     else:
#         return y
    return x if x > y else y    # 函数中的应用

print(max2(2,3))

  

列表解析
#普通方式
s=‘hello‘
l=[]
for i in s:
    res=i.upper()
    l.append(res)
print(l)

#列表解析方式
s=‘hello‘
res=[i.upper() for i in s]
print(res)

#普通方式
l=[1,31,73,84,57,22]
l_new=[]
for i in l:
    if i > 50:
        l_new.append(i)
print(l_new)

#列表解析方式
res=[i for i in l if i > 50]
print(res)

#普通方式
l=[]
for i in range(100):
    l.append(i)
print(l)

#列表解析方式
res=[i for i in range(1,100)]
print(res)

#普通方式
l=[1,2,3,4]
l_new=[]
for i in l:
    res=i**2
    l_new.append(res)
print(l_new)

#列表解析方式
res=[i**2 for i in l]
print(res)

#应用
l=[1,31,73,84,57,22]
#两个判断条件
print([i for i in l if i > 20 and i < 50])

  

时间: 2024-10-27 17:01:00

python3 三元表达式,列表解析的相关文章

三元表达式 列表解析

三元表达式 # 三元表达式 # x=2 # y=3 # res=x if x > y else y #判断条件if x > y放中间,如果成立结果放判断条件左边,否则就放在右边 # print(res) #打印结果为y def max2(x,y): # if x > y: # return x # else: # return y return x if x > y else y #三元表达式:条件放中间,True放左边,False右边 print(max2(2,3)) 这,感觉没

Python__三元表达式+列表解析+生成器表达式

x = 10res = 'ok' if x > 3 else 'no'print(res)#列表解析l = ['egg%s'%i for i in range(10)]print(l)l = ['egg%s'%i for i in range(10) if i > 5]print(l)names = ['alex_sb','egon','wupeiqi_sb','yuanhao_sb']names_new = [name for name in names if name.endswith('

Python基础第九天——迭代对象、 迭代器对象、生成器、三元表达式列表解析、生成器表达式

鸡汤: 要时刻不断地给自己灌输一种思想:都TMD是个人,凭什么他会而我就不会?王候将相宁有种乎?我承认人有天赋的差别,但是勤奋能弥补缺陷!所以,根据以上观点得出以下结论,只要出生时不是个傻子,那么就没有蠢的人,只有懒的猪!只要勤奋上进,小白也会变大神.加油 --奔跑吧小白 一.迭代对象.迭代器对象 1.迭代 定义:带有__iter__方法的就是可迭代对象 python常用的数据类型中,除了数字外,都是迭代对象. 例:用isinstance判断python常用数据类型是否为迭代对象,经验证,pyt

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

三元表达式,列表推导式和字典生成式

三元表达式 dog_name='crazy_dog' if dog_name=='crazy dog': print('疯狗') else: print('溜了') #通过三元表达式,我们可以缩减为以下代码 dog_name='crazy_dog' print('疯狗')if dog_name=='crazy_dog' else print('溜了') #三元表达式只支持双分支结构 条件成立时的返回值 if 条件 else 条件不成立时的返回值 列表推导式 lt=[] for i in rang

函数 三元表达式 列表生成式 字典生成式 生成器表达式

1.三元表达式 针对 if  条件判断的简写 可以比较下比如: def max2(x,y): if x > y: return x else: return y max2(20,30) ================================================= x=10 y=20 res=x if x > y else y print(res) 真正的核心代码从4条变成了一条就可以解决了 代码形式:条件成立时的返回值    if 条件    else 条件不成立时的返回

190329迭代器-生成器-三元运算-列表解析

一.迭代器 迭代器协议:对象必须提供一个next()方法,执行该方法要么返回迭代中的下一项,要么抛出一个Stoplteration异常终止迭代 可迭代对象:遵循迭代器协议,即可迭代对象,(可以被for循环的就是可迭代对象) l = {1,2,3} iter_l = l.__iter__() #将列表转换为迭代器 print(iter_l.__next__()) print(next(iter_l)) 二.生成器 1.生成器函数 def f(): for i in range(10): yield

生成器 三元表达式 列表生成式 匿名函数 内置函数

生成器 1.什么是生成器? ? -生成的工具 ? -生成器是一个自定义的迭代器,本质上是一个迭代器. 2.如何实现生成器? -但凡在函数内定义的yield ? -调用函数时,函数体代码不会执行 ? 会返回一个结果,这个结果就是生成器. 3.yield ? -每一次的yield都会往生成器对象中添加一个值. ? -yield只能在函数内定义 ? -yield可以保存函数的暂停状态 yield和return的对比 ? -相同点: ? 返回值的是不限制的: ? -不同点 ? return一次只可以返回

三元表达式,列表生成式,字典生成式,生成器表达式

三元表达式 条件成立时的返回值 if 条件 else 条件不成立时的返回值 def max2(x,y): if x > y: return x else: return y print(max2(10,20)) x=10 y=20 res=x if x > y else y print(res) 列表生成式 #输出1~10中每个数字的平方l=[item**2 for item in range(1,11)] print(l) names=['alex','wxx','lxx'] 为列表中每个人