>백엔드 개발 >파이썬 튜토리얼 >여러 Python 변수를 단일 정수 값과 효율적으로 비교하는 방법은 무엇입니까?

여러 Python 변수를 단일 정수 값과 효율적으로 비교하는 방법은 무엇입니까?

Linda Hamilton
Linda Hamilton원래의
2025-01-05 20:58:41878검색

How to Efficiently Compare Multiple Python Variables to a Single Integer Value?

여러 변수를 단일 값으로 비교

문제 설명:

방법 찾기 여러 변수가 특정 정수와 같은지 확인하고 이어서 세 글자로 구성된 문자열을 생성하는 Python. 예를 들어,

x = 0
y = 1
z = 3
mylist = []

if x or y or z == 0:
    mylist.append("c")
if x or y or z == 1:
    mylist.append("d")
if x or y or z == 2:
    mylist.append("e")
if x or y or z == 3:
    mylist.append("f")

...예상되는 출력은 ["c", "d", "f"] 목록입니다.

답변:

제공된 코드는 Python의 부울 표현식을 오해합니다. or 연산자는 각 측면을 개별적으로 검사하여 다음과 같은 평가 결과를 얻습니다.

(x == False or y == False) or (y == False or z == False)

최소 하나의 변수가 원하는 정수와 같은지 확인하려면 다음 표현식을 사용하세요.

if 1 in (x, y, z):
    ....

또는 , 개선을 위해 효율성:

if 1 in {x, y, z}:
    ....

설명:

Python에서는 연산자의 우선순위가 높으며, or 연산자는 같음(=)보다 우선순위가 낮습니다. 따라서 평등이 먼저 평가됩니다. 또한 or 연산자는 처음으로 발견된 진실한 값을 반환합니다. 즉, 코드 시퀀스:

x or y or z == 0

는 y 또는 z가 0이더라도 x가 0이 아니면 False를 반환합니다. 단일 값에 대해 여러 변수를 올바르게 평가하려면 다음과 같은 표현식을 사용하세요.

x == 1 or y == 1 or z == 1

위 내용은 여러 Python 변수를 단일 정수 값과 효율적으로 비교하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.