week9-三元表达式

Python 三元表达式(三元运算符)

✅ 基础语法

复制代码
结果A if 条件 else 结果B

含义:

  • 条件为 True → 返回结果A
  • 条件为 False → 返回结果B

一句话:if前面是满足条件的值,else后面是不满足的值 ⚠️ 和普通if语句顺序不一样!

示例1(就是你代码里的)

复制代码
'未知城市' if i == '' else i
  • 如果 i == '' → 返回 '未知城市'
  • 否则 → 返回 i

示例2

复制代码
res = 10 if 5>2 else 20
print(res) # 10

🔴 易错重点(考试高频坑)

  1. 必须写 else,不能省略!

    错误:缺少else

    1 if x>0

  2. 不能单独写冒号,和if语句区分

    错误

    lambda x:if x>0:1 else 0

    正确

    lambda x:1 if x>0 else 0

  3. 三元是表达式,有返回值,不是代码块,不能放多行语句。

🧩 放在列表推导式中(你项目的组合用法)

复制代码
[ '未知城市' if i == '' else i for i in city ]

结构拆分: [ 三元表达式 for 循环部分 ]

先循环拿到i,再执行三元表达式算出每一项的值

📌 嵌套三元(拓展考点,了解即可)

复制代码
a = 2
res = "大于0" if a>0 else "等于0" if a==0 else "小于0"

选择题(可直接加入题库)

题目:Python三元表达式语法正确的是? A. if x>0: 1 else 0 B. 1 if x>0 else 0 ✅ C. 1 when x>0 else 0 D. 1 if x>0

相关推荐
叫我铁汁儿吧2 小时前
Redux的原理
前端
云和数据.ChenGuang2 小时前
name=“张三“ age=18 weight=100.3 print (name,age,weight)
java·服务器·前端
代码猎人2 小时前
前端怎么优化兼容性
前端
Nayana2 小时前
《Web 到 HarmonyOS》-- 进程、线程与通信:谁能通、怎么通
前端
峰哥AI手记2 小时前
金融合规问答助手-RAG查询路由落地
python·aigc
叫我铁汁儿吧2 小时前
JS 中的this
前端
benchmark_cc2 小时前
量化项目启动时,应该先设计数据接口还是先编写策略?从系统架构角度做出正确选择
开发语言·python·数据分析·pandas·量化交易·股票数据·quantdash
CaptainT2 小时前
第 4 卷:面向对象、数据建模与类型系统
python
2601_962885722 小时前
如何用 Python 判断一只股票“追涨”还是“抄底”更有效?
android·开发语言·python