잡동사니에도 사랑을

[21.10.21] Python - for문 본문

PYTHON

[21.10.21] Python - for문

luvforjunk 2021. 10. 21. 22:27
728x90
반응형

Python에서의 for문 형식은 다음과 같다

 

for 변수 in range(반복횟수) :
    명령문
    
for 변수 in range(시작, 종료, 증감) :
    명령문

순환 가능 객체 : 문자열, 리스트, 튜플, 사전, range()
- for 변수 in 문자열 :
    명령문
- for 변수 in 리스트 :
    명령문
- for 변수 in 사전 :
    명령문

** while
while '조건식' :
    명령문


 

예제를 통해 살펴보도록 하자.    

 

 

for문에서 인덱스(카운터)를 얻고 싶을 때 range()함수를 사용하는데,

첫번째 구문에서 i는 0부터 10까지 한칸씩 띄워 출력하라는 의미이다.

두번째 구문에서 range(1, 10, 1): range(start, stop, step)와 같으며, 범위는 start <= i < stop 이다.

따라서, 1부터 9까지 1씩 증가해 한칸씩 띄워서 출력하라는 의미로, 결과값은 주석과 같이 1 2 3 4 5 6 7 8 9 이다.

마지막 세번째 구문을 살펴보자.

결과값을 먼저 보면, 위의 두 구문과 달리 결과값이 9부터 시작해 거꾸로 출력되었음을 알 수 있다.

Python에서 역순 출력 방법은 다양한데, [::-1] 을 이용하는 것도 그 중의 한 방법이다. 

 

 


for문에 대해 더 깊이 알기 위해 몇 가지 문제를 풀어보도록 하자

 

[문제1] 단은 입력하여 구구단을 출력하시오

원하는 단을 입력 : 7
7*1=7
7*2=14
...
7*9=63

 

*주요 내용 :

→ dan = int(input('원하는 단을 입력 : ')) : 여기서 int는 괄호 안에 있는 값을 문자열이든 실수든 상관없이 정수로 변환한다.

 

 

[결과]

 

 

[문제2] 2~9단까지 출력하시오 (다중FOR)

2*1=2   3*1=3   4*1=4   ...   9*1=9

 

*주요 내용 :

다중 for문 써서 결과를 얻어야 하는 구문이다. 

단의 변수명은 dan이라고 설정하였고, 곱해지는 값의 변수명은 i로 설정하였다.

결과값을 출력할 때 아래로 떨어지지 않고 한줄로 나란히 찍어주기 위해 ,(콤마)를 찍어준다.

또한, "\t" 탭 간격을 둬 깔끔하게 출력시켜준다.

 

[결과]

 

 

[문제3] 1~100 사이 5의 배수의 합에서 7의 배수의 합을 빼시오

5의 배수 합 = XXXX
7의 배수 합 = XXXXXXX

XXXX - XXXXXXX = ~~~

 

*주요 내용 :

마지막 세 구문은 각기 다른 방법으로 같은 결과값을 불러온다.

1) print(sum_5, "-", sum_7, "=", sum_5-sum_7)


2) print("%d - %d = %d" %(sum_5, sum_7, sum_5-sum_7))


3) print("{0} - {1} = {2}".format(sum_5, sum_7, sum_5-sum_7))

{순서} 문자열 .format(출력값)

 

 

 

[결과]

728x90
반응형

'PYTHON' 카테고리의 다른 글

[21.10.22] Python  (0) 2021.10.22
[21.10.21] Python  (0) 2021.10.22
[21.10.20] Python  (0) 2021.10.20