본문 바로가기
Programming/파이썬(python)

for 문과 함께 자주 사용하는 range 함수_for~in range

by 어깨 :) 2023. 4. 20.
728x90

for 문은 숫자 리스트를 자동으로 만들어 주는 range 함수와 함께 사용하는 경우가 많습니다.  

다음은 range 함수의 간단한 사용법입니다.

 

★ loop문으로 누적합 만들기

 

이 코드는 파이썬으로 작성된 반복문 코드입니다.

 

1. sum이라는 변수를 0으로 초기화합니다.
2. for문을 사용하여 range(1, 11, 1)로 지정한 범위 내의 숫자를 1부터 10까지 반복합니다.
- range(1, 11, 1)은 1부터 10까지의 수를 1씩 증가시키며 범위를 생성하는 함수입니다.
- 이 범위에서 i는 1부터 10까지 차례대로 변화하면서 for문 내부의 코드를 실행합니다.


3. 반복문 내부에서는 "안녕~~"과 i값을 결합한 문자열을 출력합니다.
4. 'sum' 변수에 i를 더해 누적합을 계산합니다.
5. 현재까지의 누적합을 출력합니다.
6. 반복문이 종료된 후에는 마지막으로 실행된 i값과 누적합을 출력합니다.

 

따라서 이 코드는 1부터 10까지의 수를 반복하면서 각각의 값을 출력하고 더하여 누적합을 계산한 후, 현재까지의 누적합을 출력하며 마지막으로 i값과 누적합을 출력하는 코드입니다.

 

★ range 함수로 사각형 만들기


주어진 코드는 총 3개의 for 루프를 사용하여 사각형 모양을 출력하는 코드입니다.


첫 번째 for 루프는 * 문자를 10번 출력합니다. end=""는 print() 함수가 기본적으로 출력하는 줄 바꿈(\n) 대신 빈 문자열('')을 출력하도록 지정합니다. 따라서 * 문자가 가로로 10개 출력됩니다.

두 번째 for 루프는 *과 공백으로 이루어진 가운데 줄을 출력합니다. * * 문자열이 6번 출력됩니다.

세 번째 for 루프는 첫 번째 for 루프와 같이 * 문자를 10번 출력합니다.

 

따라서 전체적으로는 아래와 같은 모양의 사각형이 출력됩니다.

 

 

 

★ range 함수로 8단 만들기


첫 번째 코드는 구구단 8단을 출력하는 코드입니다. range(1,10)은 1부터 9까지의 정수를 순서대로 반환하는 범위(range) 객체를 생성합니다. 따라서 for 루프를 통해 i가 1부터 9까지 반복됩니다. 각 반복에서 print("8 x % d=%d"%(i, 8*i))가 실행되어 8 x i = 8*i의 형식으로 8단이 출력됩니다.

 

두 번째 코드는 사용자로부터 구구단의 단 수를 입력받아 해당 단을 출력하는 코드입니다. int(input("단 입력:")) 부분은 사용자로부터 정수를 입력받아 이를 변수 dan에 할당합니다. 그리고 range(1,10)을 통해 i가 1부터 9까지 반복됩니다. 각 반복에서 print("% d x % d"%(dan, i, dan*i))가 실행되어 dan x i의 형식으로 입력받은 단에 대한 구구단이 출력됩니다. % d는 정수형 포맷 문자열을 나타내는데, 앞에서부터 순서대로 변수 dan과 i의 값을 대입합니다. 마지막으로 dan*i는 dan과 i의 곱을 나타냅니다.

 

따라서 전체적으로는 아래와 같은 8단 구구단이 출력됩니다.

 

★ 보너스- 구구단 출력하기(2단~9단)

 

소스

print("★ 구구단을 출력합니다.\n")
for x in range(2, 10):
    print("------- [" + str(x) + "단] -------")
    for y in range(1, 10):
        print(x, "X", y, "=", x*y)
print("---------------------")

결과

★ 구구단을 출력합니다.

------- [2단] -------
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단] -------
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단] -------
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단] -------
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단] -------
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단] -------
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단] -------
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단] -------
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
---------------------

 

https://wikidocs.net/1028

 

B.4. 구구단 출력하기 (2~9단)

**소스** print(★ 구구단을 출력합니다.\n) for x in range(2, 10): print(------- [ + str(x) …

wikidocs.net

 

728x90