简化链式比较

问题描述 投票:221回答:3

我有一个整数值x,我需要检查它是否在startend值之间,所以我写了以下语句:

if x >= start and x <= end:
    # do stuff

此语句带有下划线,并且工具提示告诉我必须

简化链式比较

据我所知,这种比较就和它们来的一样简单。我在这里错过了什么?

python pycharm
3个回答
392
投票

在Python中,您可以"chain" comparison operations,这仅表示它们是“和”在一起的。就您而言,就像这样:

if start <= x <= end:

参考:https://docs.python.org/3/reference/expressions.html#comparisons


10
投票

可以改写为:

start <= x <= end:

或:

r = range(start, end + 1) # (!) if integers
if x in r:
    ....

-4
投票

代码简化

if start <= x <= end: # start x is between start and end 
# do stuff
© www.soinside.com 2019 - 2024. All rights reserved.