python – 检查值是否在元组中的值对之间?

前端之家收集整理的这篇文章主要介绍了python – 检查值是否在元组中的值对之间?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
是否有一种有效的方法(很好的语法)来检查值是否在元组中包含的两个值之间?

我能想到的最好的事情是:

t = (1,2)
val = 1.5
if t[0] <= val <= t[1]:
    # do something

是否有更好的方法来编写条件?

解决方法

不,没有专门的语法,使用链式比较是正确的方法.

我能提供的“精确”是首先使用元组解包,但这只是可读性结冰:

low,high = t
if low <= val <= high:

如果您使用collection.namedtuple()生成的元组子类,您当然也可以使用以下属性

from collections import namedtuple

range_tuple = namedtuple('range_tuple','low high')
t = range_tuple(1,2)

if t.low <= val <= t.high:

猜你在找的Python相关文章