글 작성자: nouu

참고

http://www.yes24.com/Product/Goods/91433923

 

이것이 취업을 위한 코딩 테스트다 with 파이썬 - YES24

나동빈 저자의 유튜브 라이브 방송 https://www.youtube.com/c/dongbinnaIT 취준생이라면 누구나 입사하고 싶은 카카오 · 삼성전자 · 네이버 · 라인!취업의 성공 열쇠는 알고리즘 인터뷰에 있다!IT 취준생

www.yes24.com

 

목적

데이터 구조 및 알고리즘 공부 전 간단히 파이썬 문법을 살펴보는 의미에서 작성한다.

 

 

반복문(for, while)

반복문은 특정한 코드를 반복하고자 할 때 사용한다. 파이썬에서 반복문은 for과 while문이 있다. 대부분의 경우 for문이 더 소스코드가 짧기 때문에 for문을 많이 사용한다. 

 

 

while : while 선언된 변수명 조건연산자 정수 : 와 같은 형식을 띈다.

i = 1 
result = 0 

# i가 9보다 작거나 같을 때 아래 코드를 반복적으로 실행한다.
while i <= 9 : 
	result += i 
    i += 1 
    
print(f"1부터 9까지 더한 값 : {result}")

 

for : for 변수 in 리스트, 튜플, 문자열, range() 함수 등이 올 수 있다. in 뒤에 오는 데이터에 포함되어 있는 모든 원소를 첫 번째 인덱스부터 차례대로 하나씩 방문한다. 

# 1부터 9까지 정수의 합을 구하는 프로그램. for문으로 작성

result = 0 

for i in range(1, 10) : 
	result += i
    
print(result)

 

 

range()의 인자를 하나의 값만을 넣는다면 자동으로 시작 값은 0이 되고 끝 값은 그 하나의 값으로 도출된다.

scores = [90, 85, 77, 65, 97]

for i in range(5) : 
	if scores[i] >= 80 : 
		print(f"{i + 1}번 학생은 합격입니다.")

 

반복문 안에서 continue 키워드를 만나면 프로그램의 흐름은 다시 반복문의 처음으로 돌아간다. 

scores = [90, 85, 77, 65, 97]
black_list = {2, 4}

for i in range(5) :
    if i + 1 in black_list : 
        continue
    if scores[i] >= 80 : 
        print(f"{i + 1}번 학생은 합격입니다.")

 

 

마지막으로 반복문은 언제든 중첩해서 사용할 수 있다. 이것을 nested loop 라고 하는데 예를 들어 2중 반복문이 사용되는 예시는 구구단이 있겠다. 중첩된 반복문은 코딩 테스트에서 플로이드 워셜 알고리즘이나 동적 프로그래밍(다이나믹 프로그래밍) 등의 알고리즘 문제에 매우 많이 사용된다. 

for i in range(2, 10) : 
    print(f"{i}단 시작!")
    for j in range(1, 10) : 
        print(f"{i} * {j} = {i * j}")
    print(f"{i}단 끝\n")