python列表生成式

列表生成式即List Comprehensions,是Python内置的非常简单却强大的可以用来创建list的生成式。

例一:

生成0 - 9的列表:
>>> a = []
>>> a = [i for i in range(10)]
>>> a
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

例二:

 s1 = 'abcde'
 s2 = '12345'
 生成 a1 a2 a3 a4 a5 b1....
>>> a =[]
>>> a = [x + y for x in s1 for y in s2]
>>> a
['a1', 'a2', 'a3', 'a4', 'a5', 'b1', 'b2', 'b3', 'b4', 'b5', 'c1', 'c2', 'c3', 'c4', 'c5', 'd1', 'd2', 'd3', 'd4', 'd5', 'e1', 'e2', 'e3', 'e4', 'e5']

例三:

temp = ['good','Love','doG',311,3432]
 # 生成一个列表  字母全部小写,去掉数字
a = []
a = [i.lower()for i in temp if isinstance(i,str)]
print(a)
a = ['good','love','dog']

例四:

获得 1 - 9的奇数平方数:
 a = []
 a = [x * x for x in range(1,10) if x % 2 ]
 print(a)
 a = [1,9 25,49, 81]

例五:

s1 = '12345'
生成一个 1a 2b 3c....形式的列表:
>>> a = []
>>> a = ['%d%s'%(i + 1,chr(ord('a')+ i))for i in range(5)]
>>> a
['1a', '2b', '3c', '4d', '5e']

例五:

给定一个字典  生成键和值的列表:
>>> d = {'x': 'A', 'y': 'B', 'z': 'C' }
>>> [k + '=' + v for k, v in d.items()]
['y=B', 'x=A', 'z=C']

例六

l = [111,222,333,444]
生成指定格式的字符串:'1-111', '2-222', '3-333', '4-444'
>>> l = [111,222,333,444]
>>> a = []
>>> a = ['%d-%d'%(x + 1,y)for x, y in enumerate(l)]
>>> a
['1-111', '2-222', '3-333', '4-444']
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值