Class類:
創建一個類:class 類名:
構造方法:def init(self),self代表當前類的引用,類似於java中的this
class Student:
def __init__(self, name, grade): # self相當於java中的this 代表這個類自己
self.name = name
self.grade = grade
def introduce(self):
print("my name is "+self.name)
print("my grade is "+self.grade)
guo=Student("guo","100")
guo.introduce()
裝飾器: @字符
在python語言中,一個函數的內部也可以定義一個函數,函數的參數類型也可以是一個一個函數
將一個函數作爲另一個函數的裝飾,思路:
模擬給一個汽車添加一個組件,在汽車類外部包裹一層組件類。
def compose(compose_fun):
def addcompose():
print("給這個汽車添加了一個" + compose_fun)
return compose()
def car():
try:
component = input("請您輸入要給汽車添加的組件")
return component
except SystemError as error:
print("Please input a String Value " + error)
compose(car())//用compose方法給汽車類添加裝飾
這裏只是練習一下錯誤類型,實際不論輸出什麼都不會報錯= =
在Python中可以使用@字符 爲方法指定添加什麼裝飾
將上述代碼修改後
def compose(compose_fun):
def addCompose():
print("給這個汽車添加了一個" + compose_fun())
return addCompose()
@compose #添加裝飾
def car():
component=input("請您輸入要添加的組件")
return "輪胎"
print(car())