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

Python中如何用单行写法实现条件拼接目标字符串?

解决方案

你的原代码存在语法错误,Python仅允许字符串字面量直接相邻拼接,表达式与字符串字面量直接放置会触发语法错误。以下是两种符合要求的单行实现方式:

  • 基于你的思路修改:

    cond = True
    string_ = (cond * 'a ') + 'b ' + ((not cond) * 'c ')
    

    原理:布尔值在与字符串相乘时,True等价于1,False等价于0。当cond=True时,cond*'a '得到'a ',(not cond)*'c '得到空字符串,拼接后结果为'a b ';当cond=False时,cond*'a '为空字符串,(not cond)*'c '得到'c ',拼接后结果为'b c '。

  • 更简洁的条件表达式写法:

    cond = True
    string_ = 'a b ' if cond else 'b c '
    

    原理:直接通过Python三元运算符判断cond的值,返回对应字符串,逻辑更直观。

内容的提问来源于stack exchange,提问作者Samet Sökel

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.16 11:24:52