반응형

PYTHON 28

파이썬 코딩 도장 UNIT 38, 39, 40, 41, 42 심사문제

38.7 심사문제: 회문이 아니면 예외 발생시키기 class NotPalindromeError(Exception): def __init__(self): super().__init__('회문이 아닙니다.') def palindrome(word): if word != word[::-1]: raise NotPalindromeError() print(word) try: word = input() palindrome(word) except NotPalindromeError as e: print(e) 39.7 심사문제: 시간 이터레이터 만들기 class TimeIterator: def __init__(self, strt, stp): self.strt=strt self.stp=stp def __getitem__(se..

파이썬 코딩 도장 UNIT 36, 37 심사문제

36.9 심사문제: 다중 상속 사용하기 class Animals: def eat(self): print('먹다') class Wing: def flap(self): print('파닥거리다') class Bird(Animals, Wing): def fly(): print('날다') 37.3 심사문제: 두 점 사이의 거리 구하기 import math class Point2D: def __init__(self, x=0, y=0): self.x = x self.y = y length = 0.0 p = [Point2D(), Point2D(), Point2D(), Point2D()] p[0].x, p[0].y, p[1].x, p[1].y, p[2].x, p[2].y, p[3].x, p[3].y = map(int, ..

파이썬 코딩 도장 UNIT 33, 34, 35 심사문제

33.6 심사문제: 카운트다운 함수 만들기 def cntdwn(n): cnt = n+1 def closure(): nonlocal cnt cnt -= 1 return cnt return closure n = int(input()) c = cntdwn(n) for i in range(n): print(c(), end=' ') 34.6 심사문제: 게임 캐릭터 클래스 만들기 class Chrt: def __init__(self,health,mana,ability_power): self.health=health self.mana=mana self.ability_power=ability_power def tibbers(self): print('티버: 피해량 {0}'.format(self.ability_power*..

파이썬 도장 코딩 UNIT 29, 30, 31, 32

29.4 심사문제: 사칙 연산 함수 만들기 num1, num2 = map(int, input().split()) def calc(n1, n2): return n1+n2, n1-n2, n1*n2, n1/n2 a, s, m, d = calc(num1, num2) print('덧셈: {0}, 뺄셈: {1}, 곱셈: {2}, 나눗셈: {3}'.format(a, s, m, d)) 30.7 심사문제: 가장 낮은 점수, 가장 높은 점수와 평균 점수를 구하는 함수 만들기 kor, eng, mth, scn = map(int, input().split()) def get_minmax(*args): return min(args), max(args) def get_average(**kwargs): return sum(kwar..

반복문 제어

break 제어 흐름을 중단한다. -> 반복문을 끝낸다. 특정 조건이나 횟수에 도달했을 때 반복문을 멈춰, 무한루프가 되는 걸 막는다. i = 0 while True: print(i+1) i += 1 if i == 100: break#반복문 종료 #for문은 범위가 주어져야 하기 때문에 무한루프로 사용 불가 continue 제어 흐름은 유지하되, 코드 실행은 건너뛴다. 이런 특징을 이용해 if 조건식을 이용해 특정 조건에선 실행문을 건너뛰게 할 수 있다. #for문 for i in range(100): if i % 2 == 0: continue print(i) #while문 i = 0 while i < 100: i += 1 if i % 2 == 0:#i를 2로 나머지 연산했을 때 0(짝수)이라면 실행 코..

PYTHON/공부 2022.07.26

while 반복문

while 반복문 while문은 초기식 먼저 설정 뒤 조건식을 설정해 조건식이 참일 때까지 실행하도록 한다. 즉, 반복 횟수가 명확하지 않을 때 , 혹은 될 때까지 해야 할 때 유용하게 쓸 수 있다. 실행문에는 반복할 코드와 조건문에 관련된 변화식이 작성되고 실행문 수행 후 다시 조건문으로 돌아오고 결과에 따라 실행문으로 순회(loop)하거나 종료된다. 초기식 while 조건식: 반복할 코드 변화식 변화식을 잘 작성해놓지 않으면 무한루프가 될 수 있으니 주의해야 한다. ※ 무한루프로 프로그램이 돌아갈 때, 콘솔에 ctrl+c키를 누르면 멈출 수 있다. ※ import 모듈 · 반복 횟수가 정해지지 않은 경우 -> 난수 발생 -> random 모듈 임포트 import random random().rando..

PYTHON/공부 2022.07.26

for 반복문

for문 주로 횟수가 정확히 주어졌을 때 많이 사용한다. · for과 range for 변수 in range(횟수):#반복할 때마다 변수값이 덮어써짐 실행코드 #여러 표현들 for 변수 in range(시작, 끝): for 변수 in range(시작, 끝, 증가폭):#기본 증가폭은 +1 for 변수 in range(입력매개변수): for 변수 in range(시퀀스 객체): print(변수)#요소가 출력됨 변수는 0부터 시작하여 회수-1만큼 반복된다. 변수는 루프인덱스라고도 부른다. for문은 range에서 in으로 숫자를 하나씩 꺼내 반복하는 방식이므로, 숫자를 꺼낼 때마다 코드가 실행된다. 숫자를 하나 꺼내 변수에 저장하고 실행문을 실행하기 때문에 조건식에 대한 변화식을 추가할 필요가 없다. ※ pr..

PYTHON/공부 2022.07.26

파이썬 코딩 도장 UNIT 25, 26, 27, 28 심사문제

25.8 심사문제: 딕셔너리에서 특정 값 삭제하기 keys = input().split() values = map(int, input().split()) x = dict(zip(keys, values)) x.pop('delta') x = {key: value for key, value in x.items() if value != 30} print(x) 26.9 심사문제: 공약수 구하기 num1, num2 = map(int,input().split()) num1 = {i for i in range(1,num1+1) if num1 % i == 0} num2 = {j for j in range(1,num2+1) if num2 % j == 0} div = num1 & num2 result = 0 if type(..

파이썬 코딩 도장 UNIT 22, 23, 24 심사문제

22.10 심사문제: 2의 거듭제곱 리스트 생성하기 srt, end = map(int, input().split()) list = [] for i in range(srt, end+1): a = 2**i list.append(a) del list[1] del list[-2] print(list) 23.7 심사문제: 지뢰찾기 col, row = map(int, input().split()) matrix = [] for i in range(row): matrix.append(list(input())) for i in range(col): for j in range(row): if matrix[i][j]=='*': print('*',end='') else: count=0 for k in range(i-1,i+2..

파이썬 코딩 도장 UNIT 19, 20, 21 심사문제

19.6 심사문제: 산 모양으로 별 출력하기 n = int(input('홀수 입력 : ')) index1 =1 for i in range(1, n+1): print(' '*(n-i), '*'*index1) index1 += 2 20.8 심사문제: 5와 7의 배수, 공배수 처리하기 n1, n2 = map(int, input().split(' ')) for i in range(n1, n2+1): if i % 5 == 0 and i % 7 == 0: print('FizzBuzz') elif i % 5 ==0: print('Fizz') elif i % 7==0: print('Buzz') else: print(i) 21.5 연습문제: 오각별 그리기 import turtle as t t.shape('turtle')..

반응형