바뀜

1,911 바이트 추가됨 ,  2023년 7월 15일 (토) 18:47
편집 요약 없음
1번째 줄: 1번째 줄:  
[[분류:기초]]
 
[[분류:기초]]
 +
 +
<youtube>https://www.youtube.com/watch?v=mg6dRfjc01w</youtube>
 +
 +
==개요==
 +
상황(조건)에 따라 실행 흐름을 다르게 만들기 위해 사용하는 전략.
 +
 +
= for =
 +
 +
===형태===
 +
조건의 끝은 ':' 로 구분한다.(쓰지 않으면 SyntaxError가 뜬다.)
 +
 +
다른 언어와는 달리 하위명령을 들여쓰기로 구분한다.(가독성과 간결함을 위해) 탭 1회 혹은 띄어쓰기 4번으로 구분하는 게 정석.
 +
{| class="wikitable"
 +
!형태
 +
!방법
 +
|-
 +
|기본형식
 +
|<syntaxhighlight lang="python">
 +
if 조건:
 +
    명령
 +
</syntaxhighlight>
 +
|-
 +
|여러조건
 +
|<syntaxhighlight lang="python">
 +
if 조건1 and 조건2 or 조건3:
 +
    명령
 +
</syntaxhighlight>
 +
|-
 +
|else
 +
|<syntaxhighlight lang="python">
 +
if 조건:
 +
    명령1
 +
else:
 +
    명령2
 +
</syntaxhighlight>
 +
|-
 +
|한줄형태
 +
|명령1 if 조건 else 명령2
 +
|-
 +
|case
 +
|<syntaxhighlight lang="python">
 +
if 조건1:
 +
    명령1
 +
elif 조건2:
 +
    명령2
 +
</syntaxhighlight>
 +
|-
 +
|case2
 +
|<syntaxhighlight lang="python">
 +
if 조건1:
 +
    명령1
 +
elif 조건2:
 +
    명령2
 +
else:
 +
    명령3
 +
</syntaxhighlight>
 +
|}이외, 조건문 안에 또 다른 조건문을 넣는 등 다양한 활용이 가능하다.
 +
 +
==tip==
 +
===in, not in의 활용===
 +
조건에 따라 True, False를 반환한다.
 +
{| class="wikitable"
 +
!확인
 +
!확인방법
 +
|-
 +
|데이터가 자료구조 안에 포함되어 있는가?
 +
|데이터 in 자료구조
 +
|-
 +
|데이터가 자료구조 안에 포함되어 있지 않은가?
 +
|데이터 not in 자료구조
 +
|}
 +
 +
= match =
 +
c에서 사용하는 case 문과 같다.
 +
{| class="wikitable"
 +
!형태
 +
!방법
 +
|-
 +
|기본형식
 +
|<syntaxhighlight lang="python">
 +
if 판별대상:
 +
    case 값:
 +
        명령
 +
    case 값2:
 +
        명령령
 +
</syntaxhighlight>
 +
|-
 +
|함수 변수매칭
 +
|함수로 들어오는 변수의 형태에 따라 다른 행동을 설정할 수도 있..으나, 그닥 안쓸것 같아 지금은 정리해두지 않는다.
 +
|}