파이썬 while문 for문 변환 - paisseon whilemun formun byeonhwan

DevSSOM

Python/기초

파이썬 기초 - 반복문 (for문, for-range문, while문, break문)

데브쏨 2021. 6. 9. 19:59

반복문

: 어떠한 '조건'이나, '범위 내'에서 어떠한 명령을 반복적으로 수행하는 것.

  ex. 숙제를 12시 30분까지 하겠어! 숙제를 10페이지만큼 하겠어!

for문

: 원소로 반복하는 방법.

  시퀀스의 원소를 하나씩 변수에 넣어가면서 명령 실행.

  for문에 들어갈 명령들은 같은 들여쓰기로 구분되고, 명령은 len(시퀀스)번 만큼 실행됨.

for 변수 in 시퀀스: <수행할 명령> # 시퀀스에서 각각의 원소에는 인덱스가 있어 # 그 인덱스로 나눠진 원소들을 변수에 하나하나 넣어가면서 명령을 실행한다는 의미 # 그리고 그 for문 안에는 실행시킬 어떤 명령도 함께 주어지는것

이 for문은 '범위'에 관련된 반복문이야.

  그 범위는 파이썬에서 시퀀스로 주어짐. 그리고 이 시퀀스 안에서 반복이 일어나는 것.

  ex. [1, 2, 3, 4, 5]에서 원소를 하나씩 가져와서명령대로 출력

              시퀀스                           for                         명령

sum = 0 for i in [1, 2, 3, 4, 5]: # 명령이 5번 실행되는거 sum = sum + ilength = 0 for x in 'abcdefg': # len(abcdefg) = 7. 명령이 7번 실행되는거야 length = length + 1

for-range문 ver 1.

: 횟수로 반복하는 방법.

for 변수 in range(a): <수행할 명령>count = 0 for i in range(10): # range(10) >> i가 (0, 1, ... , 9) 중에서 값을 받아와 count = count + 1 # 이 명령을 10번 반복. 이전의 count에 1을 더해서 새로운 count를 만드는것 print(count) # 10for i in range(5): print("I love Python!") # 실행 결과 I love Python! I love Python! I love Python! I love Python! I love Python!


참고) range(첫번째 수
, 마지막번째 수) : 연속되는 숫자를 만들어 주는 시퀀스 자료형

range(a, b) # a, a+1, a+2, ... , b-1 |★ b가 아니라 b-1이 마지막으로 출력되는게 중요! range(0, 9) # 0, 1, ... , 7, 8 range(5) # range(0, 5) >> 0, 1, 2, 3, 4 # 그래서 range(a) : a번 반복한다는 뜻

for-range문 ver 2.

: 구간으로 반복하는 방법.

for 변수 in range(a, b): # a부터 b-1 숫자에 대해서 반복이 일어나 (a, ... , b-1) <수행할 명령>a = [1] for i in range(2, 4): # 2, 3 두 숫자를 가지고 for문을 돌아 a.append(i) # 리스트 값의 맨뒤에 i를 추가해줘 print(a) # [1, 2, 3]

while문

: 조건으로 반복하는 방법. 조건이 True면 명령을 수행.

while 조건: # 조건이 True면 명령을 수행하겠다 <수행할 명령> # 명령이 끝나면 다시 돌아와서 첨부터 다시 확인. 이걸 반복i = 3 while i > 0: # i가 0보다 클 때 print(i) # 이 명령을 수행 i = i - 1 # 이 명령을 수행. i = 0 이되면 while문을 빠져나와 print("Launch!") # 빠져나와서 출력 # 실행 결과 3 2 1 Launch!

Q) while문에서 조건이 항상 True면?

: 무한정 코드가 실행됨. 빠져나올 수 없는 무한루프에 갇힘.

i = 1 while i > 0: # 항상 True print(i) i = i + 1 # 실행결과 1 2 3 4 5 ...

그럴 때 필요한 게 바로↓↓↓

break문

: 반복문을 탈출하는 역할.  if문으로 조건을 걸어준 다음, break 실행.

i = 0 while True: print("knock") if i >= 3: break i = i + 1 # 실행결과 | knock knock knock knock

연습문제 1

for와 range를 이용해 19단을 출력해봐.

for i in range(1, 20): # 1부터 19까지의 연속하는 숫자가 필요한 상황이니까 print("19 *", i, "=", 19 * i) # 실행 결과 19 * 1 = 19 19 * 2 = 38 19 * 3 = 57 ...

연습문제 2 : 계단 별자리

3을 입력하면 3층, 5를 입력하면 5층의 계단 별자리가 나오게 만들어봐.

num = int(input()) i = 0 while i < num+1: star = "*" * i print(star) i = i + 1 # input 값으로 5를 넣고 실행한 결과 * ** *** **** *****

연습문제3 : 평균 구하기

while문을 이용해서, 0을 입력할 때 까지 입력을 받는거야. 0을 입력받았으면, 0을 입력한 바로 이전까지의 수들의 평균을 구해봐.

# 입력예시 100 90 80 0 # 출력예시 90.0data = [] while True : num = int(input()) if not num == 0: data.append(num) else: break average = sum(data)/len(data) print(average)

점프 투 파이썬 00장 들어가기 전에 00-1 머리말 00-2 저자소개 00-3 주요변경이력 00-4 책 구입 안내 01장 파이썬이란 무엇인가? 01-1 파이썬이란? 01-2 파이썬의 특징 01-3 파이썬으로 무엇을 할 수 있을까? 01-4 파이썬 설치하기 01-5 파이썬 둘러보기 01-6 파이썬과 에디터 02장 파이썬 프로그래밍의 기초, 자료형 02-1 숫자형 02-2 문자열 자료형 02-3 리스트 자료형 02-4 튜플 자료형 02-5 딕셔너리 자료형 02-6 집합 자료형 02-7 불 자료형 02-8 자료형의 값을 저장하는 공간, 변수 02장 연습문제 03장 프로그램의 구조를 쌓는다! 제어문 03-1 if문 03-2 while문 03-3 for문 03장 연습문제 04장 파이썬의 입력과 출력 04-1 함수 04-2 사용자 입력과 출력 04-3 파일 읽고 쓰기 04-4 프로그램의 입력과 출력 04장 연습문제 05장 파이썬 날개달기 05-1 클래스 05-2 모듈 05-3 패키지 05-4 예외 처리 05-5 내장 함수 05-6 표준 라이브러리 05-7 외부 라이브러리 05장 연습문제 06장 파이썬 프로그래밍, 어떻게 시작해야 할까? 06-1 내가 프로그램을 만들 수 있을까? 06-2 3과 5의 배수 합하기 06-3 게시판 페이징하기 06-4 간단한 메모장 만들기 06-5 탭을 4개의 공백으로 바꾸기 06-6 하위 디렉터리 검색하기 06-7 파이보 06-8 코딩도장 07장 파이썬 고급주제 07-1 파이썬과 유니코드 07-2 클로저와 데코레이터 07-3 이터레이터와 제너레이터 07-4 파이썬 타입 어노테이션 08장 정규표현식 08-1 정규 표현식 살펴보기 08-2 정규 표현식 시작하기 08-3 강력한 정규 표현식의 세계로 09장 종합문제 10장 풀이 11장 마치며

관련 게시물

Toplist

최신 우편물

태그