首页 > 编程语言 >Python三目运算符(三元运算符)用法详解

Python三目运算符(三元运算符)用法详解

时间:2022-10-17 20:44:48浏览次数:78  
标签:Python else 运算符 三目 print 表达式

我们从一个具体的例子切入本节内容。假设现在有两个数字,我们希望获得其中较大的一个,那么可以使用 if else 语句,例如:

  1. if a>b:
  2. max = a;
  3. else:
  4. max = b;
但是 Python 提供了一种更加简洁的写法,如下所示:

max = a if a>b else b

这是一种类似于其它编程语言中三目运算符? :的写法。Python 是一种极简主义的编程语言,它没有引入? :这个新的运算符,而是使用已有的 if else 关键字来实现相同的功能。

使用 if else 实现三目运算符(条件运算符)的格式如下:

exp1 if contion else exp2

condition 是判断条件,exp1 和 exp2 是两个表达式。如果 condition 成立(结果为真),就执行 exp1,并把 exp1 的结果作为整个表达式的结果;如果 condition 不成立(结果为假),就执行 exp2,并把 exp2 的结果作为整个表达式的结果。

前面的语句max = a if a>b else b的含义是:
  • 如果 a>b 成立,就把 a 作为整个表达式的值,并赋给变量 max;
  • 如果 a> b 不成立,就把 b 作为整个表达式的值,并赋给变量 max。

三目运算符的嵌套

Python 三目运算符支持嵌套,如此可以构成更加复杂的表达式。在嵌套时需要注意 if 和 else 的配对,例如:

a if a>b else c if c>d else d

应该理解为:

a if a>b else ( c if c>d else d )


【实例】使用 Python 三目运算符判断两个数字的关系:
  1. a = int( input("Input a: ") )
  2. b = int( input("Input b: ") )
  3. print("a大于b") if a>b else ( print("a小于b") if a<b else print("a等于b") )
可能的运行结果:

Input a: 45↙
Input b: 100↙
a小于b

该程序是一个嵌套的三目运算符。程序先对 a>b 求值,如果该表达式为 True,程序就返回执行第一个表达式 print("a大于b"),否则将继续执行 else 后面的内容,也就是:

( print("a小于b") if a<b else print("a等于b") )

进入该表达式后,先判断 a<b 是否成立,如果 a<b 的结果为 True,将执行 print("a小于b"),否则执行 print("a等于b")。

标签:Python,else,运算符,三目,print,表达式
From: https://www.cnblogs.com/qlsh/p/16800585.html

相关文章

  • 一篇搞定Python正则表达式
    ​1.正则表达式语法1.1字符与字符类1特殊字符:.^$?+*{}[]()|以上特殊字符要想使用字面值,必须使用进行转义2字符类  1.包......
  • 10个python经典小游戏(上)-五一嗨起来(动图演示+源码分享)
    这些游戏你玩过几个?​​1.贪吃蛇​​​​2.吃豆人​​​​3.加农炮​​​​4.四子棋​​​​5.FlyBird​​​​6.记忆:数字对拼图游戏(欢迎挑战!用时:2min)​​​​7.乒乓球​......
  • Python关键字(保留字)一览表
    保留字是 Python 语言中一些已经被赋予特定意义的单词,这就要求开发者在开发程序时,不能用这些保留字作为标识符给变量、函数、类、模板以及其他对象命名。Python包含的保......
  • python变量的定义和使用
    任何编程语言都需要处理数据,比如数字、字符串、字符等,我们可以直接使用数据,也可以将数据保存到变量中,方便以后使用。变量(Variable)可以看成一个小箱子,专门用来“盛装”程序......
  • 实验1C语言开发环境使用和数据类型,运算符,表达式
    #include<stdio.h>#include<stdlib.h>intmain(){printf("0\n");printf("<H>\n");printf("II\n");printf("0\n");printf("<H>\n");pr......
  • Python内置函数一览表
    Python 解释器自带的函数叫做内置函数,这些函数可以直接使用,不需要导入某个模块。如果你熟悉Shell编程,了解什么是 Shell内置命令,那么你也很容易理解什么是Python内置......
  • python爬虫从0到1 -ajax的get请求进阶
    前面说到获得了第一页的数据。而我们要获得后面的数据时,它们的url地址并不一样。详见下图:>第一页网址https://movie.douban.com/j/search_subjects?type=movie&tag=%E7%A7%......
  • python数据分析基础005 -pandas详解_pandas入门这一篇就足够了
    文章目录​​......
  • python 案例1:可视化图表,前言知识
    1.开发过程中使用到了百度一个包,是一个可视化的框架:pyecharts2.json什么是json●JSON是一-种轻量级的数据交互格式。可以按照JSON指定的格式去组织和封装数据●JSON......
  • Python缩进规则(包含快捷键)
    和其它程序设计语言(如 Java、C语言)采用大括号“{}”分隔代码块不同,Python 采用代码缩进和冒号(:)来区分代码块之间的层次。在Python中,对于类定义、函数定义、流程控制......