You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python中如何像写列表推导式一样编写单行if-else语句?

解答

可以实现,不需要转换为列表就能直接将你给出的分支语句改写为单行,核心用到Python的三元条件表达式语法。

你给出的代码可以直接改写为以下形式:

import random
print("I am going out") if random.random() < 0.5 else print("I am staying home")

补充说明

  • 三元条件表达式的基础语法为 返回值1 if 判断条件 else 返回值2,只要条件判断两侧的执行逻辑是合法的Python表达式就可以直接使用,不需要借助列表推导式、生成器等结构,也不会生成额外的列表对象。
  • 你这个场景里print在Python3中属于函数调用,是合法的表达式,所以可以直接放在三元表达式的两侧。如果后续遇到需要执行赋值类语句的场景,Python3.8及以上版本可以搭配海象运算符实现单行编写,更低版本则不支持。

内容的提问来源于stack exchange,提问作者stochastic learner

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.24 19:54:10