class
class myclass:
i = 12345
def f(self):
return 'willy is handsome'
#將 myclass 實例化
x = myclass()
#訪問 class 裡的屬性 & 方法
print(x.i)
print(x.f())
>>> 12345
>>> willy is handsome
這裡看到 f(self) 的 self 指的是 class 用來創建 instance 本身 (下面有詳細介紹)
然後將 x 物件化成 myclass 的樣子
init()
class id:
def __init__(self , name , age):
self.n = name
self.a = age
x = id('willy' , 21)
print(x.n , x.a)
>>> willy 21
init(self , name , age) 這個構造函數的左右下劃線都是兩個,我只用了一個,導致錯誤
TypeError: object() takes no parameters
。
self
- self 代表 class 的 instance,而非 class
class test:
def prt(self):
print(self