Python

(8)Python_제어문(반복문)

빠스무 2023. 3. 7. 22:51
728x90

1. 반복문

1-1. 자료형 참/거짓 판단하기

  • 파이썬에서 사용하는 모든 자료형은 참 또는 거짓으로 표현이 가능
  • 0이 아닌 숫자는 모두 True 이고 0은 False
  • 리스트가 비어있으면 False 들어있으면 True
  • 문자열이 있으면 True 비어있으면 False

1-2. 대입 연산자

  • =, +=, -=, /=, *=, %=
  • 왼쪽에 저장된 값과 오른쪽에 값을 연산한 뒤 다시 왼쪽에 대입(inplace 연산)
num = 10
num += 1 # num = num + 1
print(num) 출력 : 10
num *=10
print(num) 출력 : 100
num /= 10
print(num) 출력 : 10.0
num %= 2
print(num) 출력 : 0.0

1-3. while문

  • while True: 를 해주면 끝나지 않는 루프로 무한루프가 된다.
while 조건식:
  조건식의 결과가 True인 동안 계속 반복할 문장
  ...

간단한 문제

 

문제1

  • 1 ~ 100 까지 짝수의 총합을 구하는 프로그램을 작성해보자

문제2

  • 원하는 단을 입력받아 해당 단의 구구단을 출력하는 프로그램을 작성해보자

1-4. for in 문

1-4. for in 문

for 변수 in iterable 객체:
  이터러블 객체의 요소 갯수만큼 반복할 문장
  ...

간단한 문제

  • for in 문을 이용하여 1~100 까지의 짝수의 총합을 구하는 프로그램을 작성해보자

1-5 enumerate

  • 반복문 사용 시 몇번째 반복인지 인덱스 번호로 확인
  • 인덱스 번호와 요소를 튜플 형태로 변환

1-6. list와 tuple을 for문과 할께 사용하기

  • li1의 값들을 i안에 하나씩 대입을 한다고 생각하면 편하다. (tu1도 같다.)

간단한 문제

아래 score 리스트에 저장된 점수가 60점 이상인 학생이 몇명인지 알아보는 프로그램을 작성해보자

score = [90,30,50,60,80,70,100,40,20,10]

2. 다중반복문

  • 반복분이 2개이상 겹쳐져 있는 형태
  • for 문 안에 for 문이 있는 형태이다 while로도 가능하다

간단한 문제

힌트.

문제1.

'🎃'를 이용하여 아래와 같은 도형을 만들어보자.

🎃🎃🎃🎃🎃
🎃🎃🎃🎃
🎃🎃🎃
🎃🎃
🎃

문제2.

'🎃'를 이용하여 아래와 같은 도형을 만들어보자.


🎃
🎃🎃
🎃🎃🎃
🎃🎃🎃🎃
🎃🎃🎃🎃🎃

문제 응용

  • 입력받은 정수의 길이만큼 위아래로 삼각형을 만들어 마름모 만들기

문제 3

  • 2중 포문을 이용해 구구단 출력하기

문제 4

  • 아래 score 리스트의 요소를 모두 출력하는 프로그램을 작성해보자
  • score = [[80,90,50],[40,70,30],[90,50,100]]

3. 컴프리헨션(Comprehension)

  • 이터러블한 오브젝트를 생성하기 위한 방법 중 하나로 파이썬에서 사용할 수 있는 유용한 기능
  • for문 if문 등 여러가지를 간편하게 한줄로 나타낼 수 있다.

  • if문을 2개를 넣어서 더욱 정밀한 조건을 넣을 수 있다.
  • 3의 배수이며, 홀수인 숫자만 리스트에 저장

  • if 조건으로 리스트 안의 값이 바뀔경우 if를 안쪽으로 사용해준다.

 

  • 2중 포문도 컴프리헨션으로 사용 가능하다