Python的三元表达式

虽然Python没有三目运算符(?:),但也有类似的替代方案,那就是true_part if condition else false_part。
Python的三元表达式有如下几种书写方法:

if __name__ == '__main__':  
    a = ''  
    b = 'True'  
    c = 'False'  
      
    #方法一:为真时的结果 if 判定条件 else 为假时的结果  
    d = b if a else c  
    print('方法一输出结果:' + d)  
      
    #方法二:判定条件 and 为真时的结果 or 为假时的结果  
    d = a and b or c  
    print('方法二输出结果:' + d)  
      
    #以上两种方法方法等同于if ... else ...  
    if a:  
        d = b  
    else:  
        d = c  
    print('if语句的输出结果:' + d)  

输出结果都为False

说明:
判断条件:a为空串,所以判断条件为假
当判断条件为真时的结果:d = b
当判断条件为假时的结果:d = c

其实Python官方对于加入三元表达式语法也是讨论了很久的,可以参考《PEP 308 — Conditional Expressions》

Conditional Expression Resolution

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Python没有三目运算符(?:),但有类似的替代方案,如下:为真时的结果 if 判定条件 else 为假时的结果...
    北山学者阅读 14,840评论 0 3
  • 更新时间:2016/5/13 介绍 本文档所提供的编码规范,适用于主要的Python发行版中组成标准库的Pytho...
    超net阅读 11,116评论 0 15
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,399评论 19 139
  • ——给高中毕业二十周年聚会 谁第一次做的纸条 谁的作业忘记了交 谁第一次偷来了试卷 谁说未来有点飘渺 谁在球场上摔...
    禾小满_QG阅读 1,157评论 0 1
  • SQL server 2016的SSRS服务器配置出了问题,web service URL打不开,提示http50...
    axxxxxxxx阅读 3,276评论 0 0