나중에 인공지능할 때, 많이 쓰이기 때문에 연습을 해야하는 파트라고 하셨다.
파이썬 기초는 이미 아는 거인지라, 얼른 지나갔으면... 재미가 없다 ㅎㅎ
근데 맨날 C하다가 파이썬을 너무 오랜만에 해서 그런지, 오히려 너무 편해서 어색하다.
1. class : 클래스
- 변수와 함수를 묶어 놓은 개념
- 클래스 선언
- 변수와 함수를 클래스 안에서 선언
- 클래스를 객체로 만들어서 클래스 안에 선언된 변수와 함수를 사용
1-1. 기본 클래스
1-1.1. 클래스 선언
1-1.2. 객체지향
- 실제 세계를 코드에 반영해서 개발하는 방법
- 여러명의 개발자가 코드를 효율적으로 작성해서 프로젝트를 완성시키지 위한 방법
- 설계도 작성(class) -> 실제 물건(object)
- 사용자 정의 데이터 타입
1-1.3. 생성자
- 클래스의 인스턴스 객체가 생성될 때 자동으로 호출되는 메소드
- 변수(재료)를 추가할때 사용됩니다.
1-1.4. 소멸자
- 객체가 사라질 때 자동으로 호출되는 함수
1-2. 상속
- 클래스의 기능을 가져다가 기능을 수정하거나 추가할때 사용하는 방법
- 클래스가 가지고 있는 멤버나 메소드를 상속받는 클래스가 모두 사용
- 상속을 해주는 클래스 : 부모 클래스 또는 슈퍼 클래스
- 상속을 받는 클래스 : 자식 클래스 또는 서브 클래스
1-2.1. 부모 클래스(슈퍼 클래스)로 상속받기
1-2.2. 오버라이딩(overriding)
- 부모로부터 상속받은 클래스의 기능들을 수정하거나 대체
※ rate를 함부로 변경할 수 없게 하기 위해서
1-2.3. mangling
- 클래스 변수에 접근할 수 없도록 설정하는 방법
- 변수명 앞에 __를 붙여서 사용
1-3. super()
- 부모 클래스에서 사용된 함수의 코드를 받아서 자식(서브) 클래스의 함수에서 재사용할때 사용
class A:
def plus(self):
code1
class B(A):
def minus(self):
code1 # super().plus()
code2
1-4. class 다중 상속
1-5. class의 getter, setter
- 객체의 내부 변수에 접근할때 특정 로직을 거쳐서 접근시키는 방법
- 제약조건을 만들어서 접근 가능 여부를 만들 때 사용
1-6. is a & has a
- 클래스를 선언하는 방법
- A is a B
- A는 B이다. 상속을 이용해서 클래스를 만드는 방법
- A has a B
- A는 B를 가진다. A가 B객체를 가지고 클래스를 만드는 방법
2. 예외처리
- 코드를 실행중에 에러가 발생한 경우 에러를 처리하는 방법 -> 예외상황
- 예외상황이 발생하면 코드 진행이 중단되므로 계속 진행할 수 있도록 선언
2-1. try exception
try:
문제가 없을 시 실행할 코드
except:
문제 발생(예외상황)시 실행할 코드
2-2. try except else
- except가 실행되지 않으면 else의 실행문이 마지막에 출력
2-3. try except finally
- except 발생 유무와 상관없이 finally 구문은 실행
2-4. try except Exception
- python에서 발생 가능한 예외상황을 exception 객체에 미리 정의되어 있음
해당 Exception 발생 시 return에 원하는 사항을 작성할 수 있다.
2-5. 설정되어 있는 Exception 오류만 출력
2-6. 사용자 정의 예외처리
- python은 정상으로 인식할 수 있으나 코드를 작성하는 작성자 기준에서 오류라고 판단되는 부분을 예외처리
3. Magic(Spacial) Method
- compare
- __eq__ : ==
- __ne__ : !=
- __lt__ : <
- calculate
- __add__ : +
- __sub__ : -
- __repr__ : 객체의 내용을 출력(개발자용)
- __str__ : 객체의 내용을 출력
※ 해당 카테고리는 딥노이드, 오픈놀, 앙트비에서 주최하는 '<스타트업 유니버시티: DX Challenge 교육> AI+X 역량 강화 트랙'에 대한 기록입니다.
'[AI+X 역량 강화] 인공지능 > 1) 기본기: 파이썬, 데이터 수집' 카테고리의 다른 글
#8 파이썬 기초 6 // Pandas 라이브러리 (0) | 2023.08.27 |
---|---|
#7 파이썬 기초 5 // Numpy 라이브러리 (0) | 2023.08.27 |
#5 파이썬 기초 3 // 함수 문법 정리 (0) | 2023.08.25 |
#4 파이썬 기초 2 // 조건문, 반복문 (0) | 2023.08.25 |
#3 파이썬 기초 1 // 기본 문법(변수 선언, 식별자, 자료형, 형변환, 연산자 학습) (0) | 2023.08.25 |