[Python] 파이썬 for문 사용법과 예제
파이썬 for문 사용법과 예제
1부터 10 더하는 코드 짜기
1부터 10까지 더하는 코드를 짜보자.
그럼 아래와 같은 예제처럼 짤 수 있다.
하지만 1부터 100까지 더하려고 할 때 이 방식을 쓰면 엄청난 노가다가 될 거다.
이때 더 편하게 사용 할 수 있는 문법이 for문이다.
num = 1 + 2 + 3 + 4 + 5 + 6 + 7 + 8 + 9 + 10
print(num)
결과 : 55
for문 사용하여 1부터 10까지 더하기
for문을 사용하여 1 부터 10 까지 더하는 코딩을 짜보자.
range(1, 11)은 1부터 11미만 까지(1부터 10)의 숫자를 갖는 객체다.
즉 for문은 10번 반복되고 i 는 1부터 시작해서 1회 반복 마다 1씩 커진다.
즉 i는 열번 반복하며 1,2,3,4,5,6,7,8,9,10를 더하여 sum 이라는 변수에 55가 저장된다.
만약 1부터 1000을 더하고 싶을 때 in rage(1, 1001)을 넣어 간편하게 구할 수 있다.
이 예제는 반복적인 수행을 쉽게 할 수 있는게 for문이라는 것을 알려주기 위한 거고 아래 예제부터는 여러가지 for문에 대해 알아보자.
sum = 0
for i in range(1, 11):
sum = sum + i
print(sum)
결과 : 55
기본적인 for문
list에 [1,2,3,4] 4개의 요소를 만들었다.
for문 진행 순서를 알아보자.
for i in list: 이 줄에서 for문이 실행된다.
우선 list 에는 4개의 요소가 있기 때문에 for문 실행이 4번 반복된다.
1. 첫 번째 실행 시 i 에는 list의 첫 번째 요소 1이 대입 된다.
다음 줄로 내려가 print(i) 에서 i의 값 1이 출력된다.
다시 for문 위로 올라간다.
2. 두 번째 실행 할 때는 i에 list 두 번째 요소 2가 대입 된다.
다음 줄로 내려가 print(i) 에서 i의 값 2가 출력 된다.
다시 for문 위로 올라간다.
3. 두 번째 실행 할 때는 i에 list 두 번째 요소 3이 대입 된다.
다음 줄로 내려가 print(i) 에서 i의 값 3이 출력 된다.
다시 for문 위로 올라간다.
4. 두 번째 실행 할 때는 i에 list 두 번째 요소 4가 대입 된다.
다음 줄로 내려가 print(i) 에서 i의 값 4가 출력 된다.
5. 4회 반복이 끝났으므로 코드가 종료된다.
list = [1,2,3,4]
for i in list:
print(i)
결과 :
1
2
3
4
for문으로 리스트 안에 튜플 사용하기
list 안에 요소가 튜플 3개로 되어있다. [(1,2), (3,4), (5,6)]
이때 first, last를 사용해서 요소를 출력 할 수 있다.
for문 첫 번째 반복 시 리스트의 첫 번째 요소 1 ,2 가 각각 first, last에 대입 후 출력.
두 번째 반복 시 3 ,4 가 first, last에 대입 후 출력 된다.
세 번째 반복 시 5, 6 이 first, last 에 대입 후 출력 된다.
list = [(1,2), (3,4), (5,6)]
for (first, last) in list:
print(first, last)
결과 :
1 2
3 4
5 6
range 함수 사용하기
range는 숫자를 만들어주는 함수다.
range 함수는 for문과 함께 사용된다.
우선 range 함수의 기본적인 사용법을 알기 위해 아래 예제를 보자.
근데 주의 할 점이 있다.
range(11)을 넣으면 결과에 range(0, 11)이 나온다.
이때 첫 숫자는 포함되지만 끝 숫자는 포함 되지 않는다.
즉 11을 제외하고 0,1,2,3,4,5,6,7,8,9,10 까지 만들어진다.
x = range(11)
print(x)
결과 : range(0, 11)
시작 숫자, 끝 숫자 지정하기
위에 예제처럼 끝 숫자(11)만 지정하면 range(0,11) 이 나왔다.
하지만 range 는 시작 숫자(1), 끝 숫자(11)을 지정해서 range(1,11)을 만들 수 있다.
이것도 마찬가지로 1부터 10 까지만 포함된다.
x = range(1,11)
print(x)
결과 : range(1, 11)
for문과 range 함수 사용하기
range 함수를 설명한 이유는 for문과 많이 사용되기 때문이다.
아래 예제를 보자.
위에 예제에서 사용했던 리스트 대신 range(1, 21)을 사용하여 1 부터 20까지 객체를 만들 수 있다.
즉 1 부터 20 까지 간편하게 for문을 돌릴 수 있다.
for i in range(1,21):
print(i)
결과 :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
for문에서 continue문 사용하기
for문 실행 중 continue를 만나면 다음 줄은 실행하지 않고 다시 for문 처음으로 돌아간다.
예제를 통해 알아보자.
for문을 1 부터 5까지 총 5번 돌린다.
이때 i < 3 이라는 조건문을 걸어 3보다 작으면 continue가 실행되게 한다.
그럼 for문 실행 시 1, 2가 들어오면 3보다 작기 때문에 continue를 만나 print(i)를 실행하지 않고 처음 for문으로 돌아간다. 3,4,5는 3보다 크기 때문에 print(i)를 실행한다.
for i in range(1, 6):
if i < 3:
continue
print(i)
결과 :
3
4
5
for문 사용하여 구구단 만들기
구구단을 한번 만들어 보자.
for문 안에 for문을 적어서 2단부터 9단까지 만든다.
for i in range(2, 10): 는 2부터 9까지 for문 총 8번 돈다.
for j in range(1, 10):은 1부터 9까지 for문 총 9번 돈다.
이때 for i in range(2, 10): 가 한번 돌 때 마다
for j in range(1, 10): 는 9번 돌게 되는 거다.
구구단 뿐만 아니라 인터넷 찾아보면 삼각형 만들기, 네모 만들기, 트리 만들기 등 여러가지가 있다. 한번 만들어보는 것을 추천.
for i in range(2, 10):
for j in range(1, 10):
print(i, 'x', j, '=', i * j)
결과 :
2 x 1 = 2
2 x 2 = 4
2 x 3 = 6
2 x 4 = 8
2 x 5 = 10
2 x 6 = 12
2 x 7 = 14
2 x 8 = 16
2 x 9 = 18
3 x 1 = 3
3 x 2 = 6
3 x 3 = 9
3 x 4 = 12
3 x 5 = 15
3 x 6 = 18
3 x 7 = 21
3 x 8 = 24
3 x 9 = 27
4 x 1 = 4
4 x 2 = 8
4 x 3 = 12
4 x 4 = 16
4 x 5 = 20
4 x 6 = 24
4 x 7 = 28
4 x 8 = 32
4 x 9 = 36
5 x 1 = 5
5 x 2 = 10
5 x 3 = 15
5 x 4 = 20
5 x 5 = 25
5 x 6 = 30
5 x 7 = 35
5 x 8 = 40
5 x 9 = 45
6 x 1 = 6
6 x 2 = 12
6 x 3 = 18
6 x 4 = 24
6 x 5 = 30
6 x 6 = 36
6 x 7 = 42
6 x 8 = 48
6 x 9 = 54
7 x 1 = 7
7 x 2 = 14
7 x 3 = 21
7 x 4 = 28
7 x 5 = 35
7 x 6 = 42
7 x 7 = 49
7 x 8 = 56
7 x 9 = 63
8 x 1 = 8
8 x 2 = 16
8 x 3 = 24
8 x 4 = 32
8 x 5 = 40
8 x 6 = 48
8 x 7 = 56
8 x 8 = 64
8 x 9 = 72
9 x 1 = 9
9 x 2 = 18
9 x 3 = 27
9 x 4 = 36
9 x 5 = 45
9 x 6 = 54
9 x 7 = 63
9 x 8 = 72
9 x 9 = 81
댓글
댓글 쓰기