programing

파이썬 if-else 단문

goodsources 2023. 6. 20. 21:36
반응형

파이썬 if-else 단문

다음과 같은 코드가 있다고 가정합니다.

if A[i] > B[j]:
    x = A[i]
    i += 1
else:
    x = B[j]
    j += 1

더 간단한 방법이 있나요?파이썬은 이와 유사한 구문을 제공합니까?

x = (A[i] > B[j]) ? A[i] : B[j]
((A[i] > B[j]) ? i : j) += 1

가장 읽기 쉬운 방법은.

x = 10 if a > b else 11

하지만 당신은 사용할 수 있습니다.and그리고.or역시:

x = a > b and 10 or 11

하지만 "파이썬의 젠"은 "가독성이 중요하다"고 말합니다. 따라서 첫 번째 방법을 선택하십시오.

또한 변수 대신 변수를 지정하면 및/또는 트릭이 실패합니다.10그리고 그것은 평가합니다.False.

그러나 할당이 이 조건에 따라 달라지는 경우에는 다음과 같이 작성하는 것이 더 읽기 쉽습니다.

if A[i] > B[j]:
  x = A[i]
  i += 1
else:
  x = A[j]
  j += 1

말하지 않는 한i그리고.j컨테이너에하지만 당신이 왜 그것이 필요한지 우리에게 보여준다면, 당신은 그것이 필요하지 않다는 것을 알게 될 것입니다.

사용해 보십시오.

x = a > b and 10 or 11

다음은 실행 예입니다.

>>> a,b=5,7
>>> x = a > b and 10 or 11
>>> print x
11

언급URL : https://stackoverflow.com/questions/14461905/python-if-else-short-hand

반응형