【技能树共建】Python 三元表达式

Python 三元表达式是什么

Python 中没有其它语言的三元表达式(三目运算符)相关说法,但是有类似的语法。
在 Python 中,三元表达式是一种语法结构,一般被 Python 开发者叫做条件表达式,它的结构如下所示:

表达式(1)为 True 执行语句 if 条件表达式(1else 表达式(1)为 False 执行语句

怎么用

用于 if 语句简化

三元表达式可以将简单的 if 语句 缩减为一行代码。

age = 20

cn = "成年" if age >= 18 else "未成年"
print(cn)

if 语句 如下所示:

age = 20
if age >= 18 :
    cn = "成年"
else:
    cn = "未成年"

返回多个条语句

可以编写如下代码结构,在条件表达式中返回多条语句。

age = 20

cn = "成年", "大于18" if age >= 18 else "未成年"
print(cn)

代码返回一个元组,内容为 ('成年', '大于18') ,这里一定注意不要使用分号 ; ,否则只返回第一个语句的结果。

age = 20

cn = "成年"; "大于18" if age >= 18 else "未成年"
print(cn)

运行代码之后,输出 成年

在函数内部使用三元表达式

有些简单的判定逻辑,可以直接使用三元表达式简化,例如判断传入参数是否为偶数。

def even_num(num):
    return True if num % 2 == 0 else False

三元表达式用于列表推导式

在列表推导式知识点中,也存在三元表达式的落地应用,例如下述代码。

li = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
# ret = [i for i in li if i % 2 == 0]
ret = [i if i % 2 == 0 else None for i in li]
print(ret)

上述代码重点注意列表生成器部分代码,三元表达式所在位置。

三元表达式与 lambda

有时候可以将三元表达式与 lambda 进行结合,让代码变得更加简洁。

声明一个函数,返回较大值

def max(a, b):
    if a > b:
        ret = a
    else:
        ret = b

    return ret

r = max(5, 6)
print(r)

由于上述代码非常简单,可以直接使用 lambda 匿名函数实现。

max = lambda a, b: a if a > b else b
r = max(10, 15)
print(r)

提高场景

Python 条件表达式可以嵌套使用,但是建议最多嵌套两层,而且是在代码简单的情况下,具体编码如下所示,你需要重点学习下述问题。

在嵌套的时候,还需要注意 if 和 else 配对问题。

# 编写一个三元表达式,首先判断其值大于20,然后在判断是奇数(案例,无实际意义)
num = 19
ret = "小于20" if num < 20 else ("奇数" if num % 2 == 1 else "偶数")
print(ret)

扩展知识

在很多地方会将 Python 的条件表达式进行扩展,出现下述两种用法,但都属于炫技能力,实战性不强。

例如下述内容:

元组条件表达式

age = 20

cn = ("未成年", "成年")[age >= 18]
print(cn)

语法格式如下所示

 (当后面的表达式为假时返回,当后面的表达式为真时返回)[条件表达式]

字典条件表达式

age = 20

cn = {False: "未成年", True: "成年"}[age >= 18]
print(cn)

你会发现,上述两种写法都有一些故弄玄虚,而且代码 非常不易 阅读,所以不建议实战编码时使用。

  • 67
    点赞
  • 183
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
讲文明树新风共建文明校园PPT模板,共21页; PPT封面使用了卡通蓝天白云,和两个带博士帽的学生PPT背景图片。中间放置倡导文明新风、共建文明校园PPT标题。 PowerPoint模板内容页,使用了多张校园文明行为插图,搭配PPT文字排版。 讲文明树新风共建文明校园PPT内容简介: 不文明的行为有哪些? 不依次序等候,乱插队; 乱扔垃圾; 随地吐痰,吐口香糖弄脏环境; 说脏话粗话; 践踏花草破坏绿化; 不守时或迟到早退; 不尊重他人; 侵占或故意损坏公物; 在会场、图书馆等安静场所大声; 讲话扰人; 随处张贴、涂鸦,高空抛物; 打架斗殴; 浪费水电等国家资源; 一、校园礼仪 遵守课堂纪律。上课铃一响,应端坐在教室里,恭候老师上课。当老师宣布上课时,全体学生应起立,向老师问好,待老师答礼后,方可坐下。下课时,全体同学仍需起立,与老师互道“再见”。 认真听老师讲解。当老师提问时,应该先举手,待老师点到名字时才可站起来回答。发言时,身体要立正,姿态要落落大方,声音要清晰响亮,并且应当使用普通话。 在校时应按规定穿校服,要系红领巾。 学生在校园内进出与老师相遇时,应主动向老师行礼问好。学生进入老师的办公室,应先敲门,经老师允许后方可进入。  在有求于同学时,须用“请”、“谢谢”、“麻烦你”等文明礼貌用语。  应自觉保持校园整洁,不乱扔果皮、纸屑,不随地吐痰,不乱倒垃圾。不在黑板、墙壁和课桌椅上乱涂、乱画、乱刻,爱护校内的公共财物和花草树木。 二、校内就餐礼仪 礼仪礼仪种类多,就餐礼仪少不了。 吃饭勺子叮当响,奏乐吃饭可不好。 吃饭讲话聊聊天,边吃边说不文明。 节约粮食不剩饭,不挑食来样样吃。 就餐礼仪都遵守,人人都快好好好。 三、餐厅礼仪 自觉排队,不可插队。 不可随意乱扔杂物在地上。 珍惜粮食,不可浪费。 注意吃相要文雅、从容,吃东西时,应细嚼慢咽。吃菜、喝汤尽量不要发出声响或因进食过快而打嗝。吃食物时要用食物就口,不可将口去就食物。 准备好餐巾纸,不可用衣服擦拭。 就餐完毕,将碗筷放于回收桌处。不可杯盘狼藉。将自己的桌子擦拭干净。 ... 关键词:讲文明树新风共建文明校园PPT下载,倡导文明新风共建文明校园PPT下载,卡通文明校园PPT主题免费下载。.PPTX格式;
Python能的强化可以从多个方面进行。首先,Python编程能够培养逻辑思维能力、试错能力、专注能力以及解决问题的能力,这些能力对于学生和职场人士都非常重要。其次,Python具有简洁易学的特点,相比其他编程语言,Python往往只需要简短的几行代码就可以实现同样的功能,这使得学习和使用Python变得更加容易。此外,Python应用广泛且就业前景好,掌握Python技能可以为你提供一份高薪、稳定的工作机会。在技能强化方面,可以通过以下方式进行: 1. 学习Python语法和基础知识:掌握Python的基础语法和常用的数据结构、函数和模块,了解Python的特点和优势。 2. 参与编程项目和实践:通过参与编程项目和实践,将理论知识应用到实际问题中,提升编程能力和解决问题的能力。 3. 深入学习Python的高级特性和库:深入学习Python的高级特性,如迭代器、生成器、装饰器等,以及常用的Python库,如NumPy、Pandas、Matplotlib等,这些能够帮助你更高效地处理数据和开发应用。 4. 参与开源项目和社区:积极参与开源项目和社区,与其他开发者交流和分享经验,不断学习和提升自己的技能。 5. 刷题和练习:通过刷题和练习,巩固和拓展自己的Python编程能力,提升解决问题的能力和思维灵活性。 总之,通过不断学习、实践和参与社区,可以不断强化自己的Python技能,提升编程能力,并为未来的学习和职业发展打下坚实的基础。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [Python技能树Python简介](https://blog.csdn.net/weixin_39032019/article/details/120450981)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *2* [【Python技能树共建】requests-html库初识](https://edu.csdn.net/skill/python/python-7d8a025ed5434ecc84708407e3db6d17)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

梦想橡皮擦

如有帮助,来瓶可乐

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值