반응형
if / else를 한 줄로 압축하는 방법은 무엇입니까? [복제]
가능성 가능성 :
기능 삼항 연산자
간단한 if-then 문을 한 줄에 넣기
어디에서 if
/ else
문을 한 줄로 압축하는 방법이 있습니까?
나는 종종 모든 종류의 지름길을보고 여기에도 여러 가지가 있다고 생각합니다.
"삼항"표현식을 수행하는 Python 방식의 예 :
i = 5 if a > 7 else 0
로 번역
if a > 7:
i = 5
else:
i = 0
이것은 실제로 목록 이해력을 사용할 때 또는 반환 문에서 유용합니다. 언어는 읽을 수있는 코드를 만드는 데 그다지 도움이되지 않습니다.
가독성 문제는 python에서 if-else 문을 사용하는 것보다 최근의 SO 질문에서 더 나은 방법으로 자세히 논의합니다 .
또한 동일한 작업을 수행하기위한 다양한 다른 영리한 (다소 그리고 난독 화 된 ) 방법 도 계명 포함되어 있습니다 . 해당 게시물을 기반으로 읽을 가치가 있습니다.
사용 가능한 if
은 삼항 연산자 로 사용할 수 있습니다 .
>>> 'true' if True else 'false'
'true'
>>> 'true' if False else 'false'
'false'
값으로 만 사용 :
x = 3 if a==2 else 0
또는
return 3 if a==2 else 0
조건식이 있습니다.
a if cond else b
그러나
문에서 경우 if
(또는 elif
또는 else
)는 블록이 다음과 같은 경우 블록 본문과 같은 줄에 쓸 수 있습니다 .
if something: somefunc()
else: otherfunc()
그러나 이것은 형식화 스타일의 문제로 권장되지 않습니다.
참고 URL : https://stackoverflow.com/questions/11529273/how-to-condense-if-else-into-one-line-in-python
반응형
'IT' 카테고리의 다른 글
MANIFEST.in이 필요하며 그 안에 무엇이 거기에 있습니까? (0) | 2020.08.22 |
---|---|
'! = '연산 독성'T '및'T '유형의 피연산자에 적용 할 수 있습니다. (0) | 2020.08.21 |
텍스트 깜박임 jQuery (0) | 2020.08.21 |
CSS 전환에 대한 예비 (0) | 2020.08.21 |
캐스트 목록 (0) | 2020.08.21 |