[python] 연쇄 비교를 단순화

정수 값 x이 있고 a startend값 사이에 있는지 확인해야 하므로 다음 명령문을 작성합니다.

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

이 문장에는 밑줄이 표시되고 툴팁은

연쇄 비교 단순화

내가 알 수있는 한, 그 비교는 그들이 오는 것처럼 간단합니다. 여기서 무엇을 놓쳤습니까?



답변

파이썬에서는 비교 연산“연쇄” 할 수 있는데, 이는 “연합”을 의미합니다. 귀하의 경우 다음과 같습니다.

if start <= x <= end:

참조 : https://docs.python.org/3/reference/expressions.html#comparisons


답변

다음과 같이 다시 작성할 수 있습니다.

start <= x <= end:

또는:

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


답변

코드 단순화

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


답변