Dev Language/Python

[파이썬 기초] #4

ydin 2021. 11. 15. 21:16
  • 공부한 날짜: 2021.10.2n
  • 기록: 2021.11.19

 

  • 시작 전 기본개념
  • 클래스(붕어빵 틀) and 인스턴스(클래스를 가지고 코드에서 사용하는 어떤 객체) 차이 이해
  • 네임스페이스: 객체를 인스턴스화 할 때 저장된 공간
  • 클래스 변수: 직접 접근 가능하고 공유함
  • 인스턴스 변수: 객체마다 별도 존재
  • 예제 #1

-object는 상속 받는다. ()/(object) 다 가능 

-firstdog가 클래스 변수 이므로 클래스, 인스턴스 모두 공유한다 

 

  • 예제2 : self 이해하기 

- 매개변수, self가 없으면 클래스 / self가 있으면 인스턴스 메서드(인스턴스 메서드에 대해 공부 더 해보기)

 

  • f 호출하는 방법 두가지: 인스턴스로 바로 호출 or 클래스-> 메서드 -> 파라미터 순으로 호출 

-func1()은 클래스이므로 파라미터 없이 바로 호출(이게 맞나?)

 

  • 예제3

 

  • 인스턴스 생성, 인스턴스 하나 생길 때마다 stock_num 하나씩 증가 

 

 

  • 예제4

 

  • 인스턴스 생성 

 

-여기서 Info()에는 왜 아무런 파라미터도 안들어 감?? Info(self)로 선언 되어서 그런가. 찾아보기 

 

 

 

들어가기 전 개념 

 

  • Module: 함수, 변수, 클래스 등 파이썬 구성 요소 등을 모아놓은 파일 
  • 파이썬 패키지(폴더)
  • 패키지 작성 및 사용법
  • 파이썬은 패키지로 분할된 개별적인 모듈로 구성된다
  • __init__.py: Python 3.3부터는 없어도 패키지로 인식 -> 단, 하위 호환을 위해 작성 추천
  • 상대경로: ..(부모디렉토리) .(현재 디렉토리) -> 모듈 내부에서만 사용
  • 오픈 소스 등에 쓰일  있으므로 모듈 사용은 중요하다 

 

  • 모듈 불러오는 법 

 

 

파이썬 예외처리의 이해

  • 예외는 반드시 처리해야 한다
  • 로그는 만드시 남긴다
  • 예외는 던져질 수 있다(다른데로 처리를 위임할 수 있다)
  • 어떤 예외는 무시(되도록이면 하지 말기)
  • 예외 없는 것을 가정하고 프로그램 작성 -> 런타임 때 예외 발생 시 예외처리 권장(EAEP)

 

  • 예외 처리 종류
  1. Syntax Error
  1. TypeError
  2. Name Error
  3. IndexError
  4. ValueError

 

1. SyntaxError: 문법 오류

2. NameError : 참조 없음

3. ZeroDivisionError(0으로 나누는 경우)

4. IndexError

5. KeyError

6. AttributeError: 모듈, 클래스에 있는 잘못된 속성 사용 예외

7. ValueError, 시퀀스 자료구조에서 존재하지 않는 참조시 발생

 

8. FileNotFoundError

 

9. TypeError: 자료형에 맞지 않는 연산을 수행 경우 (리트스+튜플, 리스트+str,,,)

 

 

예외처리 기본 

  • try: 에러가 발생 할 가능성이 있는 코드 실행
  • except 에러명1: 여러개 가능
  • except 에러명2:
  • 예시: except Exception as e / except ValueError(Exception)
  • else: try 블록에 에러가 없을 경우 실행
  • finally: 항상 마지막에 실행 / 예외가 발생해도 한번은 실행
  • raise로 예외 직접 발생