python basic - (10) 중첩반복문(nested loop)

jun hyeon·2023년 8월 6일

python

목록 보기
10/21
post-thumbnail

제로베이스 데이터 스쿨

▶중첩반복문

반복문안에 또 다른 반복문을 선언한다.
일반적으로 행렬 또는 리스트와 같은 다차원 데이터 구조를 처리하는 데 사용되고, 특정 패턴을 출력하는 데도 사용된다. 예를 들어 별 패턴이나 다른 문자 패턴을 출력하는 경우 등이 있다.

▶별찍기

for i in range(1, 10):
    for j in range(i):
        print('*', end='') # end='' 개행하지않고 출력
    print() #개행
#출력
*
**
***
****
*****
******
*******
********
*********

i가 0에서 9부터 반복할 동안 j가 i번만큼 실행문을 반복한다 는 코드.

▶구구단

for i in range(1,10):
    for j in range(1,10):
        res = i*j
        print('{} * {} = {}\t'.format(j,i,res),end='')
    print()
#출력
1 * 1 = 1	2 * 1 = 2	3 * 1 = 3	4 * 1 = 4	5 * 1 = 5	6 * 1 = 6	7 * 1 = 7	8 * 1 = 8	9 * 1 = 9	
1 * 2 = 2	2 * 2 = 4	3 * 2 = 6	4 * 2 = 8	5 * 2 = 10	6 * 2 = 12	7 * 2 = 14	8 * 2 = 16	9 * 2 = 18	
1 * 3 = 3	2 * 3 = 6	3 * 3 = 9	4 * 3 = 12	5 * 3 = 15	6 * 3 = 18	7 * 3 = 21	8 * 3 = 24	9 * 3 = 27	
1 * 4 = 4	2 * 4 = 8	3 * 4 = 12	4 * 4 = 16	5 * 4 = 20	6 * 4 = 24	7 * 4 = 28	8 * 4 = 32	9 * 4 = 36	
1 * 5 = 5	2 * 5 = 10	3 * 5 = 15	4 * 5 = 20	5 * 5 = 25	6 * 5 = 30	7 * 5 = 35	8 * 5 = 40	9 * 5 = 45	
1 * 6 = 6	2 * 6 = 12	3 * 6 = 18	4 * 6 = 24	5 * 6 = 30	6 * 6 = 36	7 * 6 = 42	8 * 6 = 48	9 * 6 = 54	
1 * 7 = 7	2 * 7 = 14	3 * 7 = 21	4 * 7 = 28	5 * 7 = 35	6 * 7 = 42	7 * 7 = 49	8 * 7 = 56	9 * 7 = 63	
1 * 8 = 8	2 * 8 = 16	3 * 8 = 24	4 * 8 = 32	5 * 8 = 40	6 * 8 = 48	7 * 8 = 56	8 * 8 = 64	9 * 8 = 72	
1 * 9 = 9	2 * 9 = 18	3 * 9 = 27	4 * 9 = 36	5 * 9 = 45	6 * 9 = 54	7 * 9 = 63	8 * 9 = 72	9 * 9 = 81

💡중첩 반목문을 써서 2차원의 반복도 할 수 있다는 것을 알았다. 구구단을 보며 쉽게 이해가 되었다. 강사님께서는 여러 차원의 중첩을 시키면 오히려 과부하(복잡도 증가)가 될 수 있다고 적당히 써야한다고 하셨다.

0개의 댓글