더북(TheBook)

4.2.19 단일 행 if/then/else 문을 작성한다

이 기능은 인라인 if 조건이라고 불린다. 일반적인 코드는 아니지만, 다음 if/else 문을 참고해 보자.

turn = 0
...
if turn % 2:
    cell = 'X'
else:
    cell = 'O'

<Python Without Fear>(Addison-Wesley Professional, 2017)에서는 틱-택-토 게임의 프로그램 로직을 이 방식으로 구현했다. 플레이어 순서가 바뀌면 특정 셀에 ‘ X’ 혹은 ‘O’가 추가된다. 플레이 횟수가 늘어날 때마다 두 플레이어 사이에 (토글 형태로) ‘ X’ 혹은 ‘O’를 선택하게 된다.

if/else 블록 대신 다음과 같이 더 간결히 표현할 수도 있다.

cell = 'X' if turn % 2 else 'O'
참 표현식 if 조건문 else 거짓_표현식

조건문이 참이면 ‘참_표현식’이 반환되며, 거짓이면 ‘거짓_표현식’이 실행된다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.