1. 범위  range

 

👾  특정한 횟수만큼 반복해서 돌리고 싶을 때 for 반복문과 범위를 조합해서 사용한다.

👾  정수 범위를 만들어 낼 때 유용한 함수 

# 기본구조
range(초깃값, 종료값, 증감값)

 

  ⚡️  특징   1. 초깃값부터 종료값 전까지 숫자(n)들의 컬렉션을 만듦 (초깃값 <= n < 종료값)
                   2. 초깃값을 생략하면 0부터 시작
                   3. 종료값은 생략할 수 없음
                   4. 증감값을 생략하면 1씩 증가

# 종료값만 존재
range(5) : 0, 1, 2, 3, 4
# 초깃값, 종료값만 존재
range(1, 11) : 1, 2, 3, 4, 5, 6, 7, 8, 9, 10
# 초깃값, 종료값, 증감값 다 존재
range(1, 10, 2) : 1, 3, 5, 7, 9

# 리스트와 튜플
print(list(range(1, 6)))  # [1, 2, 3, 4, 5]
print(tuple(range(1, 6)))  # (1, 2, 3, 4, 5)

 


🚀  수식에 연산자를 사용한 경우

 

  - range() 함수의 매개변수로 반드시 '정수'를 입력해야 함

n = 10
a = range(0, n/2)
# -> 매개변수로 나눗셈을 사용한 경우 'TypeError'발생
a = range(0, n//2)
# -> 몫은 정수로 나오기 때문에 가능

 


 

2.  for 반복문: 범위와 함께 사용

# 기본 형식
for 숫자 변수 in 범위:
    코드
# for 반복문
for n in [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]:
    print(n)

# range() 사용한 for 반복문
for n in range(1, 11):
    print(n)

# range() 함수를 이용해 생성한 값을 사용하지 않는 경우
for n in range(10):  # 10번 반복
    print('Hello')

 


 

🚀  리스트와 범위 조합

# 리스트 선언
array = [270, 33, 100, 55, 11]

# 반복문에 적용
for i in range(len(array)):
    print("{}번째 반복: {}".format(i, array[i])

'''
실행결과)
0번째 반복: 270
1번째 반복: 33
2번째 반복: 100
3번째 반복: 55
4번째 반복: 11
'''

 


 

3. for 반복문: 반대로 반복하기

 

1) range() 함수 매개변수 사용

for i in range(4, 0-1, -1):
    print("현재 반복 변수: {}".format(i))

'''
실행결과)
현재 반복 변수: 4
현재 반복 변수: 3
현재 반복 변수: 2
현재 반복 변수: 1
현재 반복 변수: 0
'''

 

 

2) reversed() 함수 사용

for i in reversed(range(5)):
    print("현재 반복 변수: {}".format(i))
    
'''
실행결과)
현재 반복 변수: 4
현재 반복 변수: 3
현재 반복 변수: 2
현재 반복 변수: 1
현재 반복 변수: 0
'''

 


 

4. 중첩 반복문

output = ""

for i in range(1,10):
    for j in range(0,i):
        output += "*"
    output += "\n"
    
print(output)

 

 

 

  ⚡️  외부의 반복문: 줄생성(\n)

  ⚡️  내부의 반복문: 별생성(*)

 

 

 

 

 

 

 

output = ""

for i in range(1, 10):
    for j in range(9, i, -1):
        output += ' '
    for k in range(0, 2*i-1):
        output += '*'
    output += '\n'
   
print(output)

 

 

 

  ⚡️  외부의 반복문: 줄생성(\n)

  ⚡️  내부의 반복문 1 : 공백생성

 ⚡️  내부의 반복문 2 : 별생성(*)

 

 

 

 

 

 

 

 

 

[ 내용참고 : IT 학원 강의 자료 및  책 '혼자 공부하는 파이썬' ]

+ Recent posts