본문 바로가기

Python/COS Pro Python 1급14

연습예제 1. 과목별평균 점수 전산 90, 영어 75, 수학 55 js = 90 en = 75 ma = 55 avg = (js+en+ma)/3 print(f"평균점수 : {avg}") 2. 입력한 숫자가 홀수 인지 짝수인지 판별 num = int(input("숫자를 입력해주세요")) if num % 2 == 0 : #나머지 구할시 %, 몫을 구할시 // print("짝수입니다") else: print("홀수입니다") 3. 주민등록번호 991120-106824 를 연월일과 뒷자리 따로 출력 i_num = '991120-106824' i_num_list = i_num.split('-') #.split('구분자')를 활용하여 주민번호를 쪼갠다 ymd = i_num_list[0] back_num = i_num_list[.. 2023. 10. 16.
클래스와 객체 ○ 클래스 : 객체를 생성하기 위한 틀 ex) 클랙스 = 붕어빵 틀, 객체 = 붕어빵 ○ 형식 *클래스 생성시 매개변수는 반드시 self 라고 지정해야함 class 클래스명: def__init(self, 매개변수1, 매개변수2): self.속성1 = 매개변수1 self.속성2 = 매개변수2 #1. 클래스 기본 및 객체생성 #클래스생성 class Person: def __init__(self): self.hello = 'hi' def greeting(self): print(self.hello) #객체/인스턴스 생성 p = Person() p.greeting() #클래스에서 지정한 greeing 메서드 호출 #2. 매개변수 받는 클래스 및 객체생성 #클래스 생성 및 매개변수 3개 지정 class Per: d.. 2023. 10. 13.
딕셔너리와 집합 ○ 딕셔너리(Dictionary) - 리스트나 튜플처럼 순차적으로 해당 요소의 값을 구하지 않고 키를 이용하여 값을 얻음 - 형식 : 딕셔너리명 = {'키1':'벨류','키2':'벨류','키3':'벨류'~~} - 벨류로 리스트를 넣을수 있음 dic = {'name':'ppp', 'phone':'000-0000-0000', 'birth':'0606', 'hobby':['soccer', 'golf']} #키만 조회 dic.keys() #벨류만 조회 dic.values() #키/벨류 추가 딕셔너리명[추가할 키명] = 벨류 dic['new'] = 'anything' #데이터삭제 딕셔너리명[키명] del dic['phone'] #for문을 통한 벨류값 추출 for i in dic.values(): print(i).. 2023. 10. 13.
예제 : 회문판별, N-Gram, 함수 ○ 회문판별 : 순서를 반대로 해도 정상적으로 말한것처럼 보이는 단어 word = input('단어입력') #변수(2) tf = True #회문 판별값을 저장할 변수, 초깃값은 True for i in range(len(word)//2): #0부터 문자열 길이의 절반만큼 반복 if word[i] != word[-1-i]: #왼쪽 문자와 오른쪽 문자를 비교하여 문자가 다르면 회문 아님 tf = False break print(tf) ○N-Gram : 단어를 N개씩 끊어서 출력 #파싱할 단어 변수 text = 'hello' for i in range(len(text)-1): #2-gram이므로 문자열의 끝에서 한 글자 앞까지 반복 print(text[i], text[i+1], sep="&") #현재문자와 그.. 2023. 10. 12.
예제 : FizzBuzz, 반복문(For/While문) ○ FizzBuzz - 문제 : 3의 배수는 Fizz를, 5의 배수는 Buzz를 출력하며, 3과 5의 공통배수는 FizzBuzz가 출력되도록하라 #풀이① for i in range(1,51): if i % 3 == 0 and i % 5 ==0: #and 조건을 활용하여 3과 5의 공통배수 처리 print("FizzBuzz") elif i % 3 == 0 : #3의 배수 처리 print("Fizz") elif i % 5 == 0 : print("Buzz") #5의 배수 처리 else: print(i) #풀이② for i in range(1,51): if i % 15 == 0: #and 조건을 활용하여 3과 5의 공통배수 처리 & 3과 5의 최소공배수 3*5 = 15를 조건에 적용 print("FizzBuz.. 2023. 10. 12.
반복문 (While문) □ 형태(*들여쓰기 주의) while 조건식: 반복코드 변화식 ○ 기본형식 #변수지정 i = 0 while i = 0: print("h",a) a-=1 ○ random 모듈 / randint활용한 형식 #랜덤모듈 임포트 import random #변수지정 i = 0 #반복범위 지정 while i != 3: #Random모듈 중 randint 메서드 활용하여 0~9범위에서의 임의 정수 뽑기 i = random.randint(0,9) print(i) ○ break / continue #break 예제 i = 0 while True: i+=1 print(i) if i == 100: break #break이 없다면 무한르프에 빠.. 2023. 10. 11.
반복문 (For문) □ 형태(*들여쓰기 주의) for i in 반복범위: 코드 ○ 기본형태 #반복대상 a = [10,20,30,40,50,60,70] #반복문 for i in a: print(i) #반복대상 f = ['apple','orange','grape','watermelon'] #반복문 for i in f: print(i) ○ Range 범위지정하여 반복문 코딩 #변수지정 및 할당 s = 0 #range를 활용하여 1부터 20까지 범위 지정 for i in range(1, 21): s += i #i로 전달받은 값을 s변수에 증감연산자를 활용하여 할당 print(s) #들여쓰기를활용하여 반복문 코드안에 print문을 쓰면 i값이 들어올때마다의 출력값 표시 for i in range(1, 21): s += i #i로 전.. 2023. 10. 11.
조건문(if/elif/else) □ 형태(*들여쓰기 주의) if 조건문1: 코드1 elif 조건문2: 코드2 else: 코드3 ○ 단일 조건문 #사용자로부터 받은 값을 int형으로 전환 및 변수 저장 x = int(input('숫자입력')) #입력받은 값이 10과 같으면 True 출력 if x == 10: print('True') ○ if ~ else: #변수지정 및 값 할당 kor = 88 eng = 56 math = 95 scien = 76 #조건문 if kor >= 60 and eng >= 60 and math >= 60 and scien >= 76: print("합격") else: print("불합격") ○ 다중 조건문(if~elif~else:) #변수지정 및 값 할당 x = 10 #조건1 if x == 20: print('20.. 2023. 10. 10.
리스트 : 2차원 배열 □ 리스트 2차원 배열 : 행과 열로 구분된 리스트 형태 □ 2차원 생성 #빈리스트 생성 a = [] #2차원을 위한 행과 열값 저장 #아래 코드는 총 3행 2열을 생성하는 것임 a = [[10,20],[30,40],[50,60]] #인덱스를 활용하여 행번호를 통한 값 조회 a[0] a[1] a[2] □ For문 활용한 2차원 생성 #생성할 행 리스트 변수 지정 a = [] #for문을 활용한 2차원 생성 for i in range(10): #생성할 행 범위 line = [] #생성할 열 리스트 변수 지정 for b in range(2): #생성할 열 개수 지정 line.append('*') #열에 채울 값 지정 a.append(line) #채울 값을 다시 행 리스트에 저장 #확인 print(a) □ +.. 2023. 10. 10.