말로 풀어쓴 코드
# 의사코드
function div # div라는 함수
For반복문 (i = 1부터 i<=10까지, 반복할때마다 i값 1씩 증가)
{
If i가 3으로 나눠지는 경우,
print 3으로 나눠진다.
If i is divisible by 5
print 5로 나눠진다.
If print_number, print i.
print 줄바꿈.
}
# 실제 실행 코드
def div():
for i in range(1,11):
if i % 3 == 0: # i를 3으로 나눴을 때 나머지가 0인 경우
print('숫자',i, '=>','3으로 나눠짐')
elif i % 5 == 0: # i를 5로 나눴을 때 나머지가 0인 경우
print('숫자',i, '=>','5로 나눠짐')
else:
print('그외',i, '=>','숫자 3과 5로 나눠지지 않음')
div()
한 줄 for문
# for문 형태
for 반복변수 in 반복범위:
반복실행문
# 컴프리헨션
[반복실행문 for 반복변수 in 반복범위]
# if문 컴프리헨션
[반복실행문 for 반복변수 in 반복범위 if문]
# if~else문 컴프리헨션
[반복실행문(if 통과시) if 조건문 else 조건문(else 통과시) for 반복변수 in 반복범위 if문]
if문
만 있을 때 for문
오른쪽(뒤)에if~else문
for문
왼쪽(앞)에for문
# for문
squares = []
for n in numbers:
squares.append(n**2)
# 컴프리헨션
squares = [n**2 for n in numbers]
# for문
common_num = []
for a in list_a:
for b in list_b:
if a == b:
common_num.append(a)
# 컴프리헨션
common_num = [a for a in list_a for b in list_b if a == b]
if~else문
# if~else문
pas = []
for name, score in zip(names, scores):
if score > 8:
pas.append('PASS')
else:
pas.append('NO PASS')
# 컴프리헨션
pas = ['PASS' if score > 8 else 'NO PASS' for name, score in zip(names, scores)]
A = "전역변수" # 전역변수
def a():
A = "지역변수" # 지역변수
def a():
global A # global 선언으로 전역변수
A = "이제 전역변수"
for ~ else
/ while ~ else
continue
/ break
try ~ except
/ try ~ except ~ else
/ try ~ except ~ finally
raise Exception(’Error message’)
raise AssertionError