Python函數:實現某種功能的代碼段
定義一個函數需要遵循的規則:
1.使用 def 關鍵字 函數名和( ),括號內可以有形參
匿名函數使用 lambda 關鍵字定義
2.任何傳入參數和自變量必須放在括號中
3.函數的第一行語句可以使用字符串存放函數說明
4.函數內容以冒號開始,函數內的代碼塊縮進
5.使用了 return [表達式] 函數會返回一個值,如果不使用 return 則會返回 None
示例:
''' def 函數名([參數,根據函數運行需要,如果函數不需要參數,可以不寫]): 函數聲明(可不寫,如果怕忘記函數功能,最好是寫) 函數語句 ... return 需要返回的值(有些函數可以不使用 return,只進行某些操作,返回為None) '''
程序:
定義一個 say_hello 函數,使函數能夠說出 hello
# 程序:定義一個 say_hello 函數,使函數能夠說出 hello def say_hello(): print("hello")
定義一個求長方形面積的函數 area,要求具有返回值且參數為 height 和 width
# 定義一個求長方形面積的函數,要求具有返回值且參數為 height 和 width def area(height,width): return height * width
定義一個函數,輸出 歡迎,接收到的參數 name
# 定義一個函數,輸出 歡迎,接收到的參數 name def huanying(name): print("歡迎",name)
定義一個求 1~10 的總和的函數,函數名為 one_to_ten,要求具有返回值
#定義一個求 1~10 的總和的函數,函數名為 one_to_ten,要求具有返回值 def one_to_ten(): sum = 0 for i in range(1,11): sum += i return sum
拓展:
函數名可以賦值給變量,使用變量進行調用(變量此時相當於函數名)
# 函數名可以賦值給變量,使用變量進行調用(變量此時相當於函數名) def add(num_1,num_2): print(num_1 + num_2) a = add print(type(a)) # <class 'function'> a(3,5) # 8
閉包函數:
函數內嵌套函數,內部的函數要使用外部函數的值,外部函數返回內部函數名
# 函數內可以嵌套函數,內部的函數要使用外部函數的值,外部函數返回內部函數名 def print_info(string): def inner_print_info(): print("調用了 print_info 的內部函數") print(string) return inner_print_info name = '使用了 print_info 函數' info = print_info(name) # 使用了 print_info 函數 info() # 調用了 print_info 的內部函數
函數內可以進行定義類:
def run(): class student(object): pass
2020-02-11