if문의 기본 구조
if 조건문: 수행할 문장1 수행할 문장2 elif: 수행할 문장A 수행할 문장B else: 수행할 문장 a ...
조건문이란?
: 조건문이란 참과 거짓을 판단하는 문장을 말한다.
✍입력
if my_score >=90:
dm = "pass"
else:
dm = "failure"
조건부 표현식을 간단하게 작성할 수 있다.
dm = "pass" if my_score >= 90" else "failure"
변수 =
조건문이 참인 경우의 값 if 조건문 else 조건문이 거짓인 경우의 값
- break문이란?
: break문이 실행되면 해당 반복문을 멈추고 밖으로 나가게된다.
✍입력
for n in range(20):
if n % 2 == 1:
break
print(n)
else:
print(n)
print("end")
💻 출력
0
end
-> 처음 n은 0에서부터 조건문이 시작하고, 나머지가 1이라면 break가 실행된다. break에 의해 for문이 종료되고 print("end")가 실행된다.
- continue문이란?
: continue가 실행되면 해당 순번의 loop을 넘어가 다음번 loop로 들어가게 된다.
✍입력
for n in range(10):
if n % 2 == 0:
continue
print(n)
print(n)
print("end")
💻 출력
1
3
5
7
9
end
-> n이 2의 배수인 경우에는 continue가 실행된다. 따라서 if문 안에 있는 print문과 if문 밖의 print문 둘 다 실행되지 않고 다음 loop로 넘어간다.
- pass문을 쓰는 이유는?
: 동작 확인을 위해서 실행할 때, 해당 부분에서 오류가 발생하지 않도록 하기 위해 많이 사용된다.
pass가 사용되는 경우는?
1) 조건문에서 넣어줄 조건이 딱히 없을 경우
2) class 선언할 때, 초기에 넣어줄 값이 없을 경우
✍입력
for n in range(10):
if n % 2 == 0:
pass
print(n)
else:
print(n)
print("end")
💻 출력
0
1
2
3
4
5
6
7
8
9
end
-> 짝수인 경우 pass가 수행된 후 print문이 수행된다. 반복문 수행에 있어서 pass는 전혀 영향을 끼치지 않는다는 것을 알 수 있다.
while문의 기본 구조
while 조건문: 수행할 문장1 수행할 문장2 ...
while문이란?
: 조건문이 참인 동안에 while문에 속한 문장들이 반복해서 수행된다.
✍입력
money = 10000
coffee = 2700
cnt = 1
while True:
change = money - (coffee * cnt)
if change < 0:
break
else:
print(f"커피 {cnt}잔 주문받았고 잔돈은 {change}입니다.")
cnt = cnt + 1
💻 출력
커피 1잔 주문받았고 잔돈은 7300입니다.
커피 2잔 주문받았고 잔돈은 4600입니다.
커피 3잔 주문받았고 잔돈은 1900입니다.
i = 0
s = 0
while i < 100:
i += 1
s += i
print(s)
for문의 기본 구조
for 변수 in 리스트(or 튜플, 문자열) or range(숫자): 수행할 문장1 수행할 문장2 ... ...
for문이란?
: 첫 번째 요소부터 마지막 요소까지 차례로 변수에 대입되어 다음 문장들이 수행된다.
✍입력
a = [(1,5), (2,6), (3,7)]
for k,v in a:
print(k+v)
💻 출력
6
8
10
-> a리스트의 요소값이 튜플이기 때문에 각각의 요소가 자동으로 k,v 변수에 대입된다.
✍입력
ans = 0
for i in range(487):
ans += i
ans
💻 출력
118341
-> 1부터 486까지를 더한다.
comprehension문의 기본 구조
[표현식 for 항목 in 반복가능객체 if 조건문]
for문을 2개 이상 사용하는 comprehension
[표현식 for 항목1 in 반복가능객체2 if 조건문1
for 항목2 in 반복가능객체2 if 조건문2
...
for 항목n in 반복가능객체n if 조건문n]
comprehension이란?
'내포'라는 뜻으로 반복되거나 특정 조건을 만족하는 값을 가지는 자료형을 쉽게 만들기 위한 기법이다.
✍입력
result = [x*y for x in range(2,10)
for y in range(1,10)]
print(result)
💻 출력
[2, 4, 6, 8, 10, 12, 14, 16, 18, 3, 6, 9, 12, 15, 18, 21, 24, 27, 4, 8, 12, 16, 20, 24, 28, 32, 36, 5, 10, 15, 20, 25, 30, 35, 40, 45, 6, 12, 18, 24, 30, 36, 42, 48, 54, 7, 14, 21, 28, 35, 42, 49, 56, 63, 8, 16, 24, 32, 40, 48, 56, 64, 72, 9, 18, 27, 36, 45, 54, 63, 72, 81]
느낀점: 내용 정리를 하면서 break, continue, pass문의 차이를 알 수 있어서 좋았다. 또한, comprehension을 자주 사용하여 효율적인 코드를 만들어야겠다.
📚 참고자료:
위키독스, 점푸 투 파이썬, 'https://wikidocs.net/15', (2023.03.30)
tistory,[Python] pass, continue, break 차이점 알아보기,'https://chancoding.tistory.com/7', (2023.03.30)