对python条件表达式的四种实现方法小结

yipeiwu_com6年前Python基础

如下所示:

a, b, c = 1, 2, 3
 
# 1.常规
 
if a>b:
    c = a
else:
    c = b
 
# 2.表达式
c = a if a>b else b # 先执行中间的if,如果返回True,就是左边,False是右边。
 
# 3.二维列表
c = [b,a][a>b] #实际是[b,a][False],因为False被转换为0,所以是[1,2][0],也就是[1]
                      # False返回第一个,True 返回第一个。
 
# 4
c = (a>b and [a] or [b])[0]
# 这个比较好玩,False and [1] or [2],因为and的优先级高于or,先算and
# False和[1] and之后还是False,和[2]or之后却成了[2]
# True 和[1] and之后是[1],[1]和[2]or结果是[1]
# 也就是False和True在和别人做boolean运算的时候,根据and还是or,F和T在前在后有不一样的数据转换规则。

以上这篇对python条件表达式的四种实现方法小结就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python+selenium select下拉选择框定位处理方法

一、前言 总结一下python+selenium select下拉选择框定位处理的两种方式,以备后续使用时查询; 二、直接定位(XPath) 使用Firebug找到需要定位到的元素,直接...

PyQt5实现暗黑风格的计时器

PyQt5实现暗黑风格的计时器

本文实例为大家分享了PyQt5实现暗黑风格的计时器的具体代码,供大家参考,具体内容如下 主要是学习多线程知识,使用的是QTime(),但是似乎用QThread()更多一些 (QThrea...

从零学python系列之新版本导入httplib模块报ImportError解决方案

之前用Python 2.7版本的httplib做接口测试时,运行代码都是正常的, 最近开始用Python 3.3之后,再去看以前的代码,发现import httplib出现错误:Unre...

详解Python网络框架Django和Scrapy安装指南

详解Python网络框架Django和Scrapy安装指南

Windows 上的Django安装 如今Python使用的范围越来越广,所以学会关于它比较火的网络框架非常有必要。要安装Django,首先要知道你电脑上的python是哪个版本的,至于...

python中模块的__all__属性详解

python模块中的__all__属性,可用于模块导入时限制,如: from module import * 此时被导入模块若定义了__all__属性,则只有__all__内指定的属...