python 定義函式關鍵字def 簡單介紹
阿新 • • 發佈:2020-11-27
一 在類中定義的def
# python中def 是用來幹什麼的? # 可以定義函式,就是定義一個功能。 class People(): def __init__(self): print("引數self的值是: " + str(self)) print("self.__class__ 的值是: " + str(self.__class__)) print("init 方法,跟著類的載入而執行") ''' 1 定義函式的關鍵字 在python中想要定一個函式,必須使用def 關鍵字 2 後面跟函式名 xx 括號裡面定義各種行參 def run(行參1,行引數2.....) 3 在class中定義的def 空參時,自動加入self。 在python的類中self代表例項本身,具體來說,是該例項的記憶體地址。 4 return [表示式] 結束函式,選擇性地返回一個值給呼叫方。 想要返回啥直接return。 5 沒有return 返回值是一個none def 函式名(行參1,行引數2.....): 寫在類中的def,在沒有行參時,編輯器自動加入一個self 需要的功能 return xx 指定一個返回值''' def eat(self): # 沒有行參 print("吃飯") # 未指定返回值 是none def add(a, b): # 定義兩個行參 c = a + b print(c) return c # 返回一個c 指定c作為返回值 ,需要返回啥,就指定啥。
呼叫函式,檢視效果
二 聊一聊 python中的賦值 , 類的初始化。首先看一下什麼是賦值
class People(): def __init__(self): print("引數self的值是:" + str(self)) print("self.__class__ 的值是: " + str(self.__class__)) print("init 方法,跟著類的載入而執行") def eat(self): # 沒有行參 print("吃飯") # 未指定返回值 是none def add(a, b): # 定義兩個行參 c = a + b print(c) return c # 返回一個c 指定c作為返回值 ,需要返回啥,就指定啥。 # 這裡是將物件people 賦值給 pp = People print(p) # 列印的是同一個物件 print(People) print(id(p)) # id() 函式用於獲取物件的記憶體地址 二者是相等的 print(id(People)) print("------") # 可以用people物件來呼叫相關的方法 People.add(2,3)
例項化走一波
class People(): def __init__(self): print("引數self的值是: " + str(self)) print("self.__class__ 的值是: " + str(self.__class__)) print("init 方法,跟著類的載入而執行") def eat(self): # 沒有行參 print("吃飯") # 未指定返回值 是none def add(a, b): # 定義兩個行參 c = a + b print(c) return c # 返回一個c 指定c作為返回值 ,需要返回啥,就指定啥。 # 例項化和賦值的區別在於 加上了() p = People() # 例項化了一個物件people __init__ 方法會自動執行 print("------------") print(p) # 1 列印的是一個例項物件 <__main__.People object at 0x10133dd00> 2 列印的結果和print(self)相同,都是代表這個例項。
呼叫der 方法
class People(): def __init__(self): print(self) print(self.__class__) print("init 方法,跟著類的載入而執行") def eat(self): # 沒有行參 print("吃飯") # 未指定返回值 是none def add(a, b): # 定義兩個行參 c = a + b print(c) return c # 返回一個c 指定c作為返回值 ,需要返回啥,就指定啥。 # 例項化和賦值的區別在於 加上了() p = People() # 例項化了一個物件people __init__ 方法會自動執行 print("------------") print(p) # 1 列印的是一個例項物件 <__main__.People object at 0x10133dd00> 2 列印的結果和print(self)相同,都是代表這個例項。 p.eat() p.add(3,4)