python的if-else语法是我们学习这门语言时遇到的最基础的语法,下面我们来讲一讲关于if-else语法的几种变化形式。

1、常规形式的写法

        if x > y:w = xelse:w = y

2、变形一

        w = x if x > y else y

这种形式也是我们常见的形式之一,看起来要比上一种形式更加简洁,接下来看第三种形式

3、变形二

        w = [y,x][x>y]

现在想一想我们该如何理解这种形式呢,首先前面是一个列表,这个很容易理解,后面的我们可以看作是列表的下标,我们知道x>y,在编程语言里如果是真就会显示为1,如果为假就会显示为0.所以我们就能根据后面的真假来选择取前面列表中的哪一个值。

4、变形三

        w = (x>y and [a] or [b])[0]

这一种形式是最不好理解,也是最不常见的一种形式,关于这个的理解,我们首先要弄明白的是短路原则,那什么是短路原则呢?

短路原则: 
1.在逻辑运算符and中,如果前面的条件为假,则不继续进行and后面的条件判断; 
2.在逻辑运算符or中,如果前面的条件为真,则不继续进行or后面的条件判断。

了解了以上的原则,我们就容易理解上面的形式了:

① 如果x>y的值为真,则继续判断and后面的条件,显然不管a的值为何,列表[a]都是个真值,此时根据短路原则就不继续判断or后面的条件了,返回true,并且返回[a]也就是列表,此时对其取值,即[a][0]所以此时w == [a][0]。

② 如果x>y的值为假,则根据短路原则不判断and后面的条件,转而判断or后面的条件,显然[b]是真值,所以此时w == [b][0]。

python的if-else语法相关推荐

  1. python使用缩进作为语法边界、一般建议缩进()_Python百题计划

    想要像类似执行shell脚本一样执行Python脚本,需要在py文件开头加上什么?KEY:#!/usr/bin/env python Python解释器在加载 .py 文件中的代码时,会对内容进行编码 ...

  2. python使用缩进作为语法边界一般建议怎样缩进-python基础自测挑战题,适合刚起步不久的小猿!...

    一.单选题 (共8道题,每题10分) 如果你感觉学不会?莫慌,小编推荐大家加入群, 前面548中间377后面875,群里有志同道合的小伙伴, 互帮互助,还可以拿到许多视频教程! 1.Python使用缩 ...

  3. python编程语法大全-Python编程入门——基础语法详解

    今天小编给大家带来Python编程入门--基础语法详解. 关于怎么快速学python,可以加下小编的python学习群:611+530+101,不管你是小白还是大牛,小编我都欢迎,不定期分享干货 每天 ...

  4. python编程语法-Python编程入门——基础语法详解

    今天小编给大家带来Python编程入门--基础语法详解. 一.基本概念 1.内置的变量类型: Python是有变量类型的,而且会强制检查变量类型.内置的变量类型有如下几种: #浮点 float_num ...

  5. python编程if语法-Python编程入门基础语法详解经典

    原标题:Python编程入门基础语法详解经典 一.基本概念 1.内置的变量类型: Python是有变量类型的,而且会强制检查变量类型.内置的变量类型有如下几种: #浮点 float_number = ...

  6. python编程语法-Python编程入门——基础语法详解(经典)

    今天小编给大家带来Python编程入门--基础语法详解.温馨提示: 亮点在最后! 在这里还是要推荐下我自己建的Python开发学习群:301056051,群里都是学Python开发的,如果你正在学习P ...

  7. python基础语法及知识总结-Python 学习完基础语法知识后,如何进一步提高?

    ---4.30更新---感谢大家支持,点赞都破两千了.给大家整理出来新的资料,需要的小伙伴来自取: Python练手项目视频如下: Python自学基础知识如下: 以下为原文内容: Python 学习 ...

  8. python显示无效语法怎么处理-Python不支持 i ++ 语法的原因解析

    简要讨论为什么它不提供++作为运算符 正常情况下,当有人问起++原因而不是Python中的运算符时,这一行引起了我的注意. 如果您想知道最初的原因,则必须翻阅旧的Python邮件列表,或询问那里的某个 ...

  9. python input与返回值-Python 详解基本语法_函数_返回值

    Python 详解基本语法 概要: 函数的返回值是函数重要的组成部分.函数的根本在于实现程序的部分功能,所以很多时候我们需要将函数执行后的结果返回给程序再由程序作出进一步的操作.可以说是函数的返回值令 ...

  10. python使用缩进作为语法边界一般建议怎样缩进-Python基础自测挑战题

    一.单选题 (共8道题,每题10分) 1.Python使用缩进作为语法边界,一般建议怎样缩进? A.TAB B.两个空格 C.四个空格 D.八个空格 2.一般建议使用Python哪个版本作为产生环境? ...

最新文章

  1. 仅用语音,AI就能“脑补”你的脸! | 技术头条
  2. 阿里云性能测试服务 PTS 新面貌 - 压测协议、施压能力全新升级
  3. LINUX技术讨论区
  4. python关键字列表的表达式,python 列表推导和生成器表达式的使用
  5. sqlite可视化工具推荐
  6. 高博的一起做RGB-D SLAM 简单总结的流程框图
  7. iOS setValue:forUndefinedKey:]: this class is not key value coding-compliant for the key 问题
  8. 天使和恶魔差异只在一念之间
  9. 高等数学学习笔记——第九讲——数列收敛的判定方法
  10. 身份证号码前六位查询表
  11. 小波包分解、重构 matlab代码
  12. 主持人大赛-即兴主持之新闻稿
  13. 超详细的MySQL基本操作
  14. 信号与系统公式笔记(5)
  15. 用计算机视觉描述机器人,计算机视觉和机器人视觉概述
  16. [C++]char转换为string ,固定长度的char数组转换为string
  17. SD miniSD microSD TF CF MMC XD-Picture卡 SDIO CE-ATA SDHC SDXC
  18. 使用Matlab定制伯德图坐标纸
  19. @数字信号处理实验1
  20. 手撕Resnet卷积神经网络-pytorch-详细注释版(可以直接替换自己数据集)-直接放置自己的数据集就能直接跑。跑的代码有问题的可以在评论区指出,看到了会回复。训练代码和预测代码均有。

热门文章

  1. 4行代码实现微信送祝福,这个新年有点不一样
  2. 两个经纬度偏角_怎么根据两个经纬度计算出航向
  3. 实验05 指针及其在程序设计中的应用(2021级)
  4. 电源平面Z阻抗参数的提取是否需要设置VRM,以及Port 参考阻抗对仿真结果的影响
  5. 由左右相机图像点重建三维点
  6. 查询江苏丹阳高考成绩2021,2020年江苏县级市各大高中高考成绩回顾
  7. ThreadPoolExecutor(六)——线程池关闭之后
  8. java后端研发经典面试题总结二
  9. 微软project服务器搭建,安装和配置 Project Server 2013
  10. 3d智慧城市线上3d模型展示可视化平台