关于python:pycharm:”简化链接比较”

PyCharm: “Simplify Chained Comparison”

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

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

这个语句带有下划线,工具提示告诉我必须

simplify chained comparison

据我所知,比较是最简单的。我错过了什么?


在Python中,您可以"链接"比较操作,这意味着它们是"和"在一起的。在你的例子中,应该是这样的:

1
if start <= x <= end:

参考:https://docs.python.org/3/reference/expressions.html比较


它可以改写为:

1
start <= x <= end:

或:

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


代码的简化

1
2
if start <= x <= end: # start x is between start and end
# do stuff