nei*_*eil 5

关于什么:

a = 1 if x < 1 else 10 if x > 10 else x
Run Code Online (Sandbox Code Playgroud)

它提供了您想要的可读性,而没有评论中版本的冗余.它是冗长的,因为它首先定义中心案例然后必须区分两端.这样做可以减少第一个结束,剩下的一切都在范围内.

  • 嵌套三元是可读的,不会贬低但非常不同意. (5认同)

Val*_*ntz 4

如果是数组,则可以使用numpy.clip.

否则,我认为你的解决方案是最好的。或者,如果您在多个位置执行此操作,则可以定义自己的函数,对单个元素执行相同的操作。