python-2.7 - 是否可以在另一个三元运算符中使用三元运算符?
问题描述
所以首先,我标记了 python 2.7,因为 3.5 中的语法可能不同
我曾经在 python 之前做 C#,我发现我可以在彼此之间使用三元运算符。
我很好奇在 python 中是否也可以,因为它们的顺序不同。
C#
condition ? output_true : output_false
Python
output_true if condition else output_false
问我问题的另一种方式是:
我怎样才能制作一个达到相同效果的三元运算符
if a:
x = "a"
elif b:
x = "b"
else c:
x = "c"
解决方案
a
目前尚不清楚如果,b
并且c
是,您想做什么False
。但可以肯定的是,我们可以嵌套三元运算符:
x = "a" if a else ("b" if b else ("c" if c else None))
...但是如果您有多个条件,则使用三元运算符不是一个好主意,它会很难阅读;对于这些情况,请坚持使用 if/elif/else。
推荐阅读
- css - 角形材质迷你按钮周围显示一些正方形
- javascript - 如何将 JSON 对象获取到 React 组件?
- python - 如何将json转换为数据框
- javascript - 在使用 For 循环 JS 中分配变量
- python - 没有传入时如何避免“1”
- c# - ac#软件使用adb控制安卓设备
- php - mysql和PHP中两个日期的区别
- python - 在 Ubuntu 18.04 中导入 tensorflow-gpu 时遇到问题
- json - 在 json 模式中使用“$ref”时出现 MalformedURLException
- git-config - 无法更新 git config:无法锁定文件 [home]/snap/gitkraken/137/.gitconfig.lock' 以进行写入: