这个生成式中可以加上else吗,如果可以,怎么加?
来源:3-15 三种常用生成式
今天也学习python
2020-02-09 17:29:48
set1 = {i * j for i in range(1,4) for j in range(1,4) if i == j}
1回答
同学,你好。是可以有else的。当同时有 if 和 else 时,生成式构造为 [最终表达式 - 条件分支判断 - 范围选择]
例:
set1 = {i * j if i == j else i + j for i in range(1, 4) for j in range(1, 4)} print(set1) # 集合中不能有重复元素,因此输出结果为{1, 3, 4, 5, 9}
如果我的回答解决了您的疑惑,请采纳!祝学习愉快~~~~
相似问题