본문 바로가기

멋쟁이사자처럼 AI스쿨42

getter, setter, mangling(파이썬 강의 Day5) getter, setter 객체의 내부 변수에 접근할 때 특정 메서드를 거쳐서 접근할 수 있도록 하는 방법 일단... 비밀번호를 설정할 수 있는 코드를 작성해보자! class Person: def __init__(self, pw): self.hidden_pw = pw @property def pw(self): print('getter') return self.hidden_pw #함수를 거쳐서 데이터를 가져오고 @pw.setter def pw(self, pw): print('setter') self.hidden_pw = pw #함수를 거쳐서 데이터를 설정한다. 첫 번째 방법은 위와 같이 데코레이터를 사용하는 방법이다 객체를 생성해 비밀번호를 'abcd'로 생성해보자! person = Person('abcd.. 2023. 1. 6.
클래스로 마린과 메딕 구현하기(파이썬 강의 Day4 Quiz) 이 이야기는 슬픈이야기 입니다... 클래스, 상속, 데코레이터 공부를 하려고 강사님이 퀴즈를 내주셨으나... 코드 작성하다보니 조건문 공부만 하게된 이야기입니다... ㅎㄷㄷ 퀴즈는 # 스타크래프트 # - Marine : health(40), attack_pow(5), attack(상대체력감소) # - Medic : health(60), heal_pow(6), heal(상대체력회복) # 자유롭게 기능 추가 이렇게 마린과... 메딕을 간단히 구현해보는겁니다. 아래의 코드를 봅시다. class Marine: def __init__(self, health=40): self.health = health def attack(self, attack_pow=5): print(f'상대체력을 {attack_pow}만큼 감.. 2023. 1. 6.
매출늘려버리기!(파이썬 강의 Day4) 이번 시간엔 매출 데이터를 통해 미팅횟수가 매출을 늘리는데 더 중요한지... 아니면! 상담시간이 더 중요한지... 알아봅시다! 우선 기본적인 지식을 알아봅시다! 1. 분산(variance) 1개의 이산정도를 나타냅니다. 편차제곱의 평균 넘파이에서 np.var()로 계산 2. 공분산(covariance) 2개의 확률변수의 상관정도를 나타냅니다. 평균 편차곱 방향성은 보여줄수 있으나 강도를 나타내는데 한계가 있습니다. 표본데이터의 크기에 따라서 값의 차이가 큰 단점이 있습니다. 넘파이에서 np.cov()로 계산 3. 상관계수(correlation coefficient) 공분산의 한계를 극복하기 위해서 만들어집니다. -1 ~ 1까지의 수를 가지며 0과 가까울수록 상관도가 적음을 의미합니다. x의 분산과 y의 .. 2023. 1. 5.
상속과 데코레이터(파이썬 강의 Day4) 상속 다른 클래스의 변수를 가져와서 사용하는 방법 아이폰1은 전화만 가능! 아이폰2는 전화, 메시지 가능! 아이폰3는 전화, 메시지, 인터넷 가능! 이것을 클래스로 작성하면... class iPhone1: def call(self): print('calling!') class iPhone2: def call(self): print('calling!') def send_msg(self): print('send_msg!') class iPhone3: def call(self): print('calling!') def send_msg(self): print('send_msg!') def internet(self): print('internet!') iphone1 = iPhone1() iphone2 = iPho.. 2023. 1. 5.
클래스(파이썬 강의 Day4) 클래스 class, self, 사용자 정의 데이터 타입, special methods(__init__(), __add_() ...) 변수, 함수를 묶어서 코드를 작성하는 방법 객체지향을 구현하는 문법 객체지향 : 실제세계를 모델링하여 프로그램을 개발하는 개발 방법론 => 협업이 용이함 객체지향 참조 https://ko.wikipedia.org/wiki/%EA%B0%9D%EC%B2%B4_%EC%A7%80%ED%96%A5_%ED%94%84%EB%A1%9C%EA%B7%B8%EB%9E%98%EB%B0%8D 객체 지향 프로그래밍 - 위키백과, 우리 모두의 백과사전 위키백과, 우리 모두의 백과사전. 객체 지향 프로그래밍(영어: Object-Oriented Programming, OOP)은 컴퓨터 프로그래밍의 패러다.. 2023. 1. 5.
함수3(파이썬 강의 Day3) 함수 def, return, argument, parameter, docstring, scope, lambda 반복적으로 사용되는 코드를 묶어서 사용하는 방법 => 코드의 유지보수가 쉬워진다. 사용법 : 함수선언(코드작성) -> 함수호출(코드실행) - lambda 간단한 함수를 함수 선언 없이 사용 가능 코드의 가독성이 좋아진다. lambda 파라미터: 리턴값 의 형식으로 사용한다. 아래와 같은 코드를 보자! # 변수 3개 선언 : plus, minus, calc : 저장공간 3칸 def plus(n1, n2): return n1 + n2 def minus(n1, n2): return n1-n2 def calc(func, n1, n2): return func(n1, n2) calc(plus, 1, 2),.. 2023. 1. 4.
함수2(파이썬 강의 Day3) 함수 def, return, argument, parameter, docstring, scope, lambda 반복적으로 사용되는 코드를 묶어서 사용하는 방법 => 코드의 유지보수가 쉬워진다. 사용법 : 함수선언(코드작성) -> 함수호출(코드실행) - docstring 함수의 설명을 작성한다. 함수선언코드 바로 아래에 멀티라인 문자열로 작성한다. help()함수로 docstring 출력이 가능하다. 간단한 덧셈함수의 docstring을 작성해보면... def plus(n1, n2): ''' This function is to plus two numbers. parameters ---------- n1 : int. float : first number n2 : int, float : second numbe.. 2023. 1. 4.
함수1(파이썬 강의 Day3) 함수 def, return, argument, parameter, docstring, scope, lambda 반복적으로 사용되는 코드를 묶어서 사용하는 방법 => 코드의 유지보수가 쉬워진다. 사용법 : 함수선언(코드작성) -> 함수호출(코드실행) - 함수 우선 로또번호를 리스트로 출력하는 코드를 보면 아래와 같다! import random # 1. 로또번호 저장 변수 생성 lotto = [] # 2. 아래의 코드 반복 : while while True: # 2-1. 1 ~ 45 랜덤한 숫자 출력 후 저장 : random_number : random.randint() random_number = random.randint(1, 45) # 2-2. lotto 리스트에 random_number 없으면, ra.. 2023. 1. 4.