美文网首页Python
11、列表生成式

11、列表生成式

作者: 代码充电宝 | 来源:发表于2019-04-26 09:30 被阅读2次
(1)生成表达式
  • 包含起始不包含结束
print range(1,11)
#[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

print [x * x for x in range(1,11)]
#[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]

#条件过滤
print [x * x for x in range(1, 11) if x % 2 == 0]
#[4, 16, 36, 64, 100]
(2)复杂表达式
  • % (name, score)中参数会替换前面%s
d = { 'Adam': 95, 'Lisa': 85, 'Bart': 59 }
str = ['%s=%s' %(name,value) for name,value in d.items()]
# ['Lisa=85', 'Adam=95', 'Bart=59']
(3)多层嵌套表达式
>>> [m + n for m in 'ABC' for n in '123']
['A1', 'A2', 'A3', 'B1', 'B2', 'B3', 'C1', 'C2', 'C3']
  • 找出对称的三位数
print [g+b*10+q*100 for g in range(1,10) for b in range(0,10) for q in range(1,10) if g == q]

相关文章

网友评论

    本文标题:11、列表生成式

    本文链接:https://www.haomeiwen.com/subject/ydgxnqtx.html