- 面向對象編程
面向對象的設計思想是抽象出Class,根據Class(類)創建Instance(實例)。
面向對象的程序設計思想:首選思考的不是程序的執行流程,而是Student這種數據類型應該被視為一個對象,這個對象擁有name和score這兩個屬性(Property)。
class Student(object):
def __init__(self, name, score):
self.name = name
self.score = score
def print_score(self):
print('%s: %s' % (self.name, self.score))
bart = Student('Bart Simpson', 59)
lisa = Student('Lisa Simpson', 87)
bart.print_score()
lisa.print_score()
- 關于self的參考理解:
init稱為構造函數或者初始程序,初始化類或對象的實例,在這個init下,新創立的對象就是self.
class Dog:
def init(self, legs, colour):
self.legs = legs
self.colour = colour
fido = Dog(4, "brown")
spot = Dog(3, "mostly yellow")
對一只狗來說:_init_
就是第一次寫了一些信息的出生證明,幾斤重,在哪里出生等等
變量self就是它以后會成為的那條狗。而self.color 或者self.legs或self.xx就是它今后的改變會成為怎么樣一只狗,黃色 3條腿或其他
關于Class中的變量和_init_
函數中的變量的差別:
class MyClass(object):
i = 123
def _init_(self):
self.i = 345
print(MyClass().i)
345
print(MyClass.i)
123