python 之 推导式
来源:互联网 发布:诚邀辣妹 网络性与爱 编辑:程序博客网 时间:2024/04/28 10:32
推导式 : 英文 comprehension
支持推导式的有列表list 字典dict 集合set 注意元组没有 推导式,如果你那样去写,他会变成一个generator生成器对象
推导式会让代码更加简洁,易懂,更加pythonic
列表:
[ expression for ..... if ..... ] #生成了一个列表对象
其中:expression 是加入到列表中的元素的表达式 , 后面的for if 则是对这个表达式进行重复和筛选的语句
#!/usr/bin/env python3#coding:utf-8li1 = [1 for i in range(5)] print(li1) #[1, 1, 1, 1, 1]li2 = [i for i in range(1,11) if i%2==0]print(li2) #[2, 4, 6, 8, 10]li3 = [char.upper() for char in 'hello']print(li3) #['H', 'E', 'L', 'L', 'O']li4 = [i*i for i in range(10)]print(li4) #[0, 1, 4, 9, 16, 25, 36, 49, 64, 81]li5 = [(m,n) for m in [1,2,3] for n in "abc"]print(li5)#[(1, 'a'), (1, 'b'), (1, 'c'), (2, 'a'), (2, 'b'), (2, 'c'), (3, 'a'), (3, 'b'), (3, 'c')]
集合的推导式和列表一样,只不过集合或过滤掉重复 的元素
字典:
#!/usr/bin/env python3#coding:utf-8s = 'hello'#字符串中每个字符出现的次数 char : times d1 = {char:s.count(char) for char in s }print(d1)#这个字典在生成的时候发生了键的覆盖:'hello' 中'l' 出现了2次#改进:d2 = {char:s.count(char) for char in set(s)}print(d2)
0 0
- python 之 推导式
- python之推导式
- python之列表推导式
- Python之列表推导式
- python 列表推导式
- python 推导式
- python列表推导式
- Python 推导式
- python 列表推导式
- Python列表推导式
- python的推导式
- python推导式
- python 列表推导式
- python--推导式
- python 列表推导式
- python 推导式
- Python推导式介绍
- python列表推导式
- PS学习笔记----图层锁定
- 在 WinCe 平台读写 ini 文件
- Word Loadder II (***) -- BFS DFS
- QT---设置textedit文本框中某个字符格式
- QT---qtextedit中的光标问题
- python 之 推导式
- 慕课学习C++笔记02-封装(上)
- 3-06. 表达式转换(25)
- 几道python笔试题
- leetcode 258 Add Digits(难易度:Easy)
- Java IO流->处理流->打印流:PrintStream&PrintWriter
- Python yield 使用浅析
- Java多线程 -- 有返回值的线程
- Android Camera