python if 구문 해석이 너무 어렵습니다 ㅠ

django 에서 나온 구문인데 파이썬 if문인데 처음보는 형태로 작성이 되어있어서 해석이 쉽지 않습니다 ㅠ

a = title if title is not None else post_title

위의 구문에서 if문이 true(즉 not None 이라면)면 a = title 이고 if문이 false면 else문으로 들어가서 a = post_title 로 해석을 해봤는데 맞는건가요??

qwe6293 1778

2020년 10월 6일 4:44 오후

목록으로
2개의 답변이 있습니다. 1 / 1 Page

네 옳게 해석하셨네요.

위 문법은 조건부 표현식입니다.
다음 URL을 참조해 보세요.

https://wikidocs.net/20#_4

박응용

2020년 10월 6일 4:54 오후

감사합니다! 알려주신 URL을 통해 추가 학습해볼게요 ! - qwe6293님, 2020년 10월 6일 5:24 오후 추천 , 대댓글

조금 부연설명을 하자면
a = 1 if a == 0 else 2 if a == 1 else 3 if a == 2 else 4
이런 식이라면 해석은
a가 0이면 1을 대입, a가 1이면 2을 대입, a가 2면 3을 대입, 모두 아니라면 4를 대입
이렇게 해석이 됩니다
저는 코드를 줄일 때 가끔 사용합니다
해석 방식 정도만 알고 계셔도 될듯 하네요

may0310

2020년 10월 8일 12:29 오후