python-列表生成式

列表生成式:使用[表达式 for循环 条件]格式创建列表
#创建一个1-9的列表,直接生成或者for循环加入到空列表中
# list1 = list(range(1,10))
>>[1,2,3,4,5,6,7,8,9]

#使用列表生成式,for之前的x表达式表示列表当中元素
list1 = [x for x in range(10)]
print(list1)
 
>>[1,2,3,4,5,6,7,8,9]
#生成1,4,9,16...
list2 = [x**2 for x in range(10)]
print(list2)
#相当于
list2 = []
for i in range(10):
    list2.append(i)
 
>>[0, 1, 4, 9, 16, 25, 36, 49, 64, 81]
#生成偶数列表list3 = [x for x in range( 0, 10, 2)] #通过step获取 print(list3)
>>[0, 2, 4, 6, 8]

list3=[i for i in range(0,10) if i%2==0]
print(list3)
>>[0, 2, 4, 6, 8]

#在1-100之间的偶数中筛选出20-50之间的偶数,可以在循环的后面添加判断条件
list4 = [i for i in range(1,101) if i%2==0 and i>=20 and i<=50]
print(list4)
>>[20, 22, 24, 26, 28, 30, 32, 34, 36, 38, 40, 42, 44, 46, 48, 50]

#将列表里面元素都小写操作
data = ['hello','AShds','hjhJjsSDD']
list5 = [i.lower() for i in data]
print(list5)
>>['hello', 'ashds', 'hjhjjssdd']


#列表生成式嵌套,列表生成式也可以多个for循环嵌套,但是会导致代码可阅读性降低,不建议使用
list6 = [[x,y] for x in range(3) for y in range(3)]
print(list6)
>> [[0, 0], [0, 1], [0, 2], [1, 0], [1, 1], [1, 2], [2, 0], [2, 1], [2, 2]]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值