class
rectangle:
def__init__
(self, x, y):
self.x = x
#self.x是類例項化之後的例項物件的區域性變數 x是引數
self.y = y
defgetperi
(self):
#周長return (self.x + self.y) * 2
defgetarea
(self):
#面積return self.x * self.y
rect = rectangle(3, 4)
print("rect的面積是", rect.getarea())
print("rect的面積是", rect.getperi())
效果如下
rect = rectangle(3, 4)
print
("rect的面積是", rect.getarea())
12print
("rect的周長是", rect.getperi())
14
定製序列
容器型別的協議
不可變的容器len(self) 和getitem(self, key)
可變的容器 除了len() 和getitem() 還需要定製setitem(self, key, value) 和delitem(self, key)
簡介:簡單來說就是迴圈。
先來用for 目標 in 表示式:來看看迴圈的效果
for i in "aj":
print(i)
links =
foreach in links:
print("%s → %s" % (each, links[each]))
效果如下
a
jaj很帥 → 帥帥帥!
aj很酷 → 酷酷酷!
如果用內建迭代函式iter和next
class
fibs:
def__init__
(self, n = 10):
self.a = 0
self.b = 1
self.n = n
def__iter__
(self):
return self
def__next__
(self):
self.a, self.b = self.b, self.a + self.b
if self.a > self.n:
raise stopiteration
return self.a
fibs = fibs(100)
for each in fibs:
print(each)
效果如下
112
35813
2134
5589
Python的一些魔法方法
init 魔法方法是指 xx 的方法 具有特殊功能 init 魔法方法初始化。會自動呼叫 class washer def init self self.width 400 self.height 500 def print info self print f 洗衣機寬,高為 haier washe...
Python 類內建魔法方法
一 str 方法 python class 內建函式有很多,想到了先記下來.str str 方法和 init 方法類似,都是一些特殊方法,都會自動執行的,init 是初始化的作用,str 則是用來返回物件的字串表示式。在我們編寫乙個新的python類的時候,總是在最開始位置寫乙個初始化方法 init...
Python魔法方法 基本的魔法方法
new cls 1.new 是在乙個物件例項化時候所呼叫的第乙個方法 2.他的第乙個引數是這個類,其他的引數是用來直接傳遞給 init 方法 3.new 決定是否使用該 init 方法,因為.new 可以直接呼叫其他類的構造方法,或者返回別的例項物件來作為本類的例項,如果 new 沒有返回例項物件,...