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

相关推荐
Csvn8 分钟前
微前端架构
前端
道尔柯南41 分钟前
C++ string 类详解:从常用接口到深拷贝,彻底掌握字符串处理
android·java·c++
岁月宁静1 小时前
什么是 Agent:从"会聊天"到"会做事"
人工智能·python
岁月宁静1 小时前
AI 应用开发工程师简历怎么写:HR 初筛、技术复筛、面试追问,三道关卡各看什么?
人工智能·python·面试
来让爷抱一个2 小时前
Python 异步里混用同步库,事件循环被卡住的全过程
开发语言·python
kingx32 小时前
Bugku 3122 谷歌小恐龙题解:纯离线逆向 Vault 的 AES-GCM 加密资源(附 Python 解密器)
java·逆向·ctf·bugku·aes-gcm
Linux-lucky2 小时前
45-Linux学习之旅之防火墙与WEB加固
linux·前端·网络·学习·ubuntu
小肝一下3 小时前
3.基础语法(3)
python
DevOpenClub4 小时前
职教高考控制线 API:招生类别枚举、筛选与空分数含义
java·数据库·高考
风骏时光牛马4 小时前
生成一个移动端标题,只需要一个标题,不需要其他的任何文本。
前端