JavaScript 유저 Python 배우기 :: 클래스, 인스턴스, 상속, 객체

JavaScript 유저 Python 배우기 :: 클래스, 인스턴스, 상속, 객체

728x90

엘리스의 도레미 파이썬에서 배운 내용

class(클래스)

class는 붕어빵 기계의 틀이라고 생각하자

사용법은 자바스크립트와 비슷해 보인다

클래스 사용 예시

파이썬에서 메서드 만들려면

self를 넣어주면된다

self 없어도 작동하지만 관례처럼 붙인다고 한다

예전에는 안돌아갔다는 이야기

class Human: name = "Bob" age = 10 # 메서드 def exercise(self): print("축구")

this 대신 self

자바스크립트에서는 프로퍼티를 가져오려면 this를 사용했다

여기서는 메서드 만들어줄 때 사용한 self를 사용하는가보다

self 사용 예시

class Bbread: taste = "밀가루" def eat(self): # this 대신 self print(self.taste, "맛이 나요!") redBean = Bbread() choux = Bbread() redBean.taste = "팥" choux.taste = "슈크림" redBean.eat() # 팥 맛이 나요! choux.eat() # 슈크림 맛이 나요!

instance(인스턴스)

class로 붕어빵 기계 틀을 만들었다면

instance는 class로 찍어내는 붕어빵

자바스크립트

new 클래스() 이런식으로 사용하던것을

파이썬에서는

그냥 클래스() 이렇게 사용한다ㅐ

클래스 인스턴스 사용예시

bobby = Human() # 인스턴스 변수 bobby.name bobby.age # 인스턴스 메서드 bobby.exercise()

클래스 상속

자바스크립트라면 extends를 사용할텐데

파이썬에서는 괄호안에 넣어준다

살펴보다

클래스 상속 예시 1

# 클래스 상속 # 클래스 Pokemon 클래스 Picachu로 상속받기 class Picachu(Pokemon): name = "Picachu" hp = 50 type ="Electric" def skill(self): print("10만 볼트!")

클래스 상속 예시 2

상속 받은 클래스에서

아무것도 바꾸지 않는다면 pass를 넣어줘야한다

class Pet: attr= "cute" def cry(self): return "멍멍!" class Dog(Pet): pass maltese = Dog() print(maltese.attr, maltese.cry())

파이썬은 객체 단위로 저장 한다

숫자 1, 2, 3 의 class는 int

'abc'의 class는 str

[1, 2, 3]의 class 는 list

. . .

이 말이 무엇이냐하면

리스트 [1, 2, 3]은 list라는 클래스 라는 것

.append() 사용한다는 것은

list의 메서드 append(){}를 사용하고 있었다는 말!

python by Chris Ried #unsplash

from http://forgottenknowledge.tistory.com/198 by ccl(A) rewrite - 2021-11-26 12:28:11