使用Python的判断语句模拟三目运算

yipeiwu_com6年前Python基础

下面说的和三目运算有点相似,但又不一样,实在不知道该如何拟定标题,先就是这个标题吧,大家都知道python中没有三目运算,但是and/or有点类似三目运算:
and/or

单独使用表示逻辑关系与和或,也可以组和使用,用法如下
and

and前后如果某一个值为假(False, '', [], {}, None…)则返回第一个假值 如果所有值都为真则返回最后一个真值
or

如果or任意一个值为真,则立刻返回这个值 如果所有值都为假,则or返回最后一个假值
例子

result = 'test' and True # result = True
result = 'test' and 'ortest' # result = ortest
result = False and 'ortest' # result = False
result = '' and None # result = ''

result = '' or "Hall" # result = Hall
result = False or None # result = None
result = 'test' or 'nottest' # result = test

使用单行if else 模拟三目运算

result if True / False else fresult if为真时候结果为result,为假的时候结果为fresult

result = 'test' if True else 'not test' # result = 'test'
result = 'test' if False else 'not test' # result = 'not test'

相关文章

Python递归实现汉诺塔算法示例

本文实例讲述了Python递归实现汉诺塔算法。分享给大家供大家参考,具体如下: 最近面试题,面试官让我5分钟实现汉诺塔算法(已然忘记汉诺塔是啥)。 痛定思痛,回来查了一下汉诺塔的题目和算...

让代码变得更易维护的7个Python库

随着软件项目进入“维护模式”,对可读性和编码标准的要求很容易落空(甚至从一开始就没有建立过那些标准)。然而,在代码库中保持一致的代码风格和测试标准能够显著减轻维护的压力,也能确保新的开发...

Python实现将SQLite中的数据直接输出为CVS的方法示例

本文实例讲述了Python实现将SQLite中的数据直接输出为CVS的方法。分享给大家供大家参考,具体如下: 对于SQLite来说,目前查看还是比较麻烦,所以就像把SQLite中的数据直...

python使用matplotlib模块绘制多条折线图、散点图

python使用matplotlib模块绘制多条折线图、散点图

今天想直观的展示一下数据就用到了matplotlib模块,之前都是一张图只有一条曲线,现在想同一个图片上绘制多条曲线来对比,实现很简单,具体如下: #!usr/bin/env pyt...

Python 实现12306登录功能实例代码

下面一段代码给大家带来了python实现12306登录功能,具体代码如下所示: #!/usr/bin/env python import requests import urllib...