python基礎之函數
函數:
# 什麼是函數:一系列python語句的組合,可以在程序中運行一次或者多次 # 一般是完成具體的獨立的功能 # 為什麼要使用函數 # 代碼的復用最大化以及最小化冗餘代碼,整體代碼結構清晰,問題局部化 # 函數定義: # def 函數名() # 函數體【一系列的python語句,表示獨立的功能】 # 函數的調用: # 本質上就是去執行函數定義裡面的代碼塊。在調用函數之前,必須先定義 printInfo() #函數的調用 函數名()#函數的調用
def printInfo(name,height,weight,hobby,pro): ##加括號,固定語法規則 print('%s的體重是%d' % (name, weight)) # 函數代碼塊 print('%s的身高是%f' %(name,height)) print('%s的愛好是%s' % (name,hobby)) print('%s的專業是%s' %(name,pro)) #封裝完成 pass # 調用帶參數的信息 printInfo('小李',172,200,'打遊戲','信息管理') printInfo('小名',172,200,'打遊戲','信息管理')
# 參數的分類: # 必選參數、默認參數【缺省參數】、可選參數、關鍵字參數 # 參數:其實就是函數為瞭實現某項特定功能,進而為瞭得到實現功能所需要的數據 # 為瞭得到外部數據的 # 1 必選參數 def sum(a,b): # a,b形式參數:隻是意義上的一種參數,在定義的時候是不占內存地址的 sum=a+b print(sum) pass # 函數調用 sum(20,15) #20 15是實際參數,是實際占用內存地址的 sum() #未傳遞參數,不可使用,不允許這樣調用
# 參數的分類: # 必選參數、默認參數【缺省參數】、可選參數、關鍵字參數 # 參數:其實就是函數為瞭實現某項特定功能,進而為瞭得到實現功能所需要的數據 # 為瞭得到外部數據的 # 1 必選參數 def sum(a,b): # a,b形式參數:隻是意義上的一種參數,在定義的時候是不占內存地址的 sum=a+b print(sum) pass # 函數調用 sum(20,15) #20 15是實際參數,是實際占用內存地址的 sum() #未傳遞參數,不可使用,不允許這樣調用 # 2:默認參數【缺省參數】 def sum1(a=20,b) print('') pass # 默認參數調用 sum1(10) # 在調用的時候如果未賦值,就會用定義函數時給的默認值 sum1(2,56)
# 可變參數(當參數的個數不確定時使用,比較靈活) def getComputer(*args): ''' :param args: #可變長參數類型 :return: ''' print(args) pass getComputer(1) ##當元組數據時直接加逗號 getComputer((1,2,3,4,5,6)) getComputer(1,2)
# 可變參數(當參數的個數不確定時使用,比較靈活) def getComputer(*args): #可變長的參數 ''' :param args: #可變長參數類型 :return: ''' # print(args) result=0 for item in args: result+=item print('result=%d'%result) pass getComputer(1) ##當元組數據時直接加逗號 getComputer(1,2)
# 關鍵字參數 # ** 來定義 # 在函數體內 參數關鍵字是一個字典類型 key是一個字符串 def keyFunc(**kwargs): print(kwargs) pass # 調用 # keyFunc(1,2,3) #字典類型,此類型錯誤 dictA={'name':'leo','age':35} # keyFunc(**dictA) #直接傳遞字典對象時,字典名前要加** # keyFunc(name='peter',age=19) #鍵值對方法傳遞 keyFunc() #不傳參數也可,直接為空
# 組合的使用 def complexFunc(*args,**kwargs): #參數混合使用 print(args) print(kwargs) pass complexFunc(1,2,3,4,name='劉德華') #直接傳送到第一個參數之中 # 參數可以都給,也可以都不給,也可以隻給其一 complexFunc(name='賈玲') #自動識別,自動填充
def TestMup(**kwargs,*args): ##可選參數 ''' 可選參數必須放到關鍵字可選參數之前 可選參數:接受的數據是一個元組類型 關鍵字可選參數:接受的數據是一個字段類型 :param kwargs: :param args: :return: ''' pass
總結
本篇文章就到這裡瞭,希望能夠給你帶來幫助,也希望您能夠多多關註WalkonNet的更多內容!
推薦閱讀:
- python基礎之函數的定義和調用
- Python 面向切面編程 AOP 及裝飾器
- 一文搞懂Python的函數傳參機制
- python 裝飾器重要在哪
- python中必會的四大高級數據類型(字符,元組,列表,字典)