#1. class를 선언하다가 생긴 여러가지 궁금증들...
시작은 그냥 class를 만드려고 했던 것뿐인데 수업을 듣다보니
__init__은 무엇이고 self는 왜 들어가는 것이며,
class, method, object, instance 이것들은 또 무슨 개념인지^^;
구글링으로 이 블로그 저 블로그 찾아보고, 코드를 실행시켜 보면서 확인한 내용을 정리해 본다.
#2. 정리한 내용
(고수분들이 오류를 발견하신다면 댓글로 한수 가르쳐 주세요 :-D)
1) class는 무엇인가? 변수와 method를 정의하는 것
위에서는 class의 이름은 fruit이고, 그 형태를 보면
클래스이름("과일이름", 과일개수) -----> fruit(name, quantity) 로 해 놓았다.
2) method는 무엇인가? class를 정의하는 함수, class 안에 있는 함수
위에서 fruit이라는 이름의 class를 만들기로 했으면 fruit(name, quantity)가 무슨 내용인지를 정의해줘야 한다
def __init__(self, name, quantity):
self.name=name
self.quantity=quantity
3) 객체 object는 무엇인가? class가 담긴 변수라고 이해 했음
뒤에 name, quantity는 내가 임의로 보기 편하게 정한 이름이고...
self는 객체 이름이고(위에 코드에서는 a가 객체),
객체이름.name=name 이라는 것은 객체이름.name값에 name값을 넣으라는 것
즉, a=fruit("apple",5) 이니까 a.name은 "apple"이 된다.
객체 object가 인스턴스라고 보면 된다고 한다.
**파이썬은 모든 변수가 객체로서 존재한다고 함
우리는 단순한 값을 대입할 뿐이지만 파이썬이 그 값 하위에 다른 변수와 함수를 포함시킨다 (변수에 내장된 하위 변수나 함수를 사용)
'Python notes > Others' 카테고리의 다른 글
파이썬 예제코드) Group화 알고리즘 (+같은 값을 가진 튜플을 group화 하기) (0) | 2021.03.26 |
---|---|
파이썬) rjust 함수 사용법 (오른쪽 정렬해서 출력하기) (0) | 2021.03.26 |
파이썬 예제코드) 최빈값 알고리즘 만들기 (+인덱스 값을 사용) (0) | 2021.03.25 |
파이썬 예제코드) 정수 리스트 2개를 병합하기 (+Merge algorithm) (0) | 2021.03.25 |
파이썬 예제코드) binary search 방법으로 검색 알고리즘 만들기 (0) | 2021.03.25 |
댓글