【每天1分钟】PYTHON基础之条件与循环(列表解析)
2019-07-25 22:41
686 查看
版权声明:署名,允许他人基于本文进行创作,且必须基于与原先许可协议相同的许可协议分发本文 (Creative Commons)
【每天1分钟】PYTHON基础之条件与循环(列表解析)
语法
- 基本语法
[expression for iter_val in iterable]
- 拓展语法
[expression for iter_val in iterable if cond_expr]
示例
列出 1 ~ 10 的数字平方
# 一般写法 >>> L = [] >>> for i in range(1, 11): L.append(i ** 2) >>> L [1, 4, 9, 16, 25, 36, 49, 64, 81, 100] >>> # 使用列表解析实现 >>> L = [i ** 2 for i in range(1, 11)] >>> L [1, 4, 9, 16, 25, 36, 49, 64, 81, 100] >>>
列出 1 ~ 10 中,偶数的数字平方
# 一般写法 >>> L = [] >>> for i in range(1, 11): if i % 2 == 1: L.append(i ** 2) >>> L [1, 9, 25, 49, 81] >>> # 使用列表解析的写法 >>> L = [i ** 2 for i in range(1, 11) if i % 2 == 1] >>> L [1, 9, 25, 49, 81] >>>
- 使用列表解析实现"全排列"
实现数字1 ~ 3 的1 ~ 3 次方的排列,即:1 ** 1, 1 ** 2, 1 ** 3, 2 ** 1, 2 ** 2, 2 ** 3, 3 ** 1, 3 ** 2, 3 ** 3 的结果
>>> L = [x ** y for x in range(1, 4) for y in range(1, 4)] >>> L [1, 1, 1, 2, 4, 8, 3, 9, 27] >>>
- 同时使用字典的key 与 value
>>> D = {1:1, 2:2, 3:3, 4:4} >>> L = [x ** y for x,y in D.items()] >>> L [1, 4, 27, 256] >>>
- 更进一步
5.1
[expression for iter_val in iterable if cond1 if cond2 ]
或者
[expression for iter_val in iterable if cond1 and cond2 ]
等价于:
ret = [] for item in iterable: if cond1: if cond2: ret.append(expr)
5.2
[expression for iter_val in iterable if cond1 or cond2]
等价于:
ret = [] for item in iterable: if cond1 or cond2: ret.append(expr)
5.3
[expression for iter_val1 in iterable1 for iter_val2 in iterable2]
等价于:
ret = [] for item1 in iterable1: for item2 in iterable2: ret.append(expr)
相关文章推荐
- 【每天1分钟】PYTHON基础之条件与循环(迭代器)
- 【每天1分钟】PYTHON基础之条件与循环(几个返回迭代器的函数)
- python基础(3)--条件判断循环语句与列表解析,生成器
- Python3基础之条件与循环控制实例解析
- Python3基础之条件与循环控制实例解析
- python自动化--语言基础二运算符、格式化输出、条件语句、循环语句、列表、元组
- Python语法-1-变量、输出、List列表、tuple元组、条件判断和循环等重要基础知识
- leetcode-1:python基础,循环、条件、列表、字典的应用,enumerate、range函数以及2.0和3.0print的区别
- 【Python基础教程笔记(二)】字典,条件,循环和其他语句
- [Python学习] 专题二.条件语句和循环语句的基础知识
- Python 专题二 条件语句和循环语句的基础知识
- Python基础5条件判断+循环
- python基础(二)条件判断、循环、格式化输出
- 【2-4】Python基础——条件判断和循环
- Python基础:条件判断与循环的两个要点
- [Python入门及进阶笔记]Python-基础-列表及列表解析小结
- Python【基础:数据类型和变量 字符串和编码 list和tuple 条件判断 循环 dict和set】注意事项(与java,c比较)
- 1.Python基础-条件和循环
- Python基础-条件判断和循环