一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

腳本之家,腳本語言編程技術及教程分享平臺!
分類導航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

服務器之家 - 腳本之家 - Python - python函數的高級應用詳解

python函數的高級應用詳解

2022-03-06 12:55江湖2001 Python

這篇文章主要為大家介紹了python函數的高級應用,具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助

前言

函數是我們所熟知的,在python中函數的定義格式如下:

def 函數名(形式參數):

? 函數體

? 函數的封裝就是實現代碼塊的復用,python內置了一些基礎的函數,開發者也可以自己定義函數,函數只能先定義,再進行調用。

一、函數調用的步驟

1、程序遇到函數調用的情況時,暫停執行

2、將實際參數值傳遞給函數參數

3、執行函數體語句

4、返回值并繼續向下執行

二、參數的打包和解包

打包

? 參數的打包指的是多個參數可以同時處理,也叫可變長度參數, 可變長度參數在定義函數時主要有兩種形式*parameter和**parameter,前者用來接受任意多個參數并將其放在一個元組當中,后者接收多個關鍵參數組成鍵值對并將其放在字典當中。

打包為元組

?
1
2
3
4
5
def demo(*p):
  print(p)
demo(1,2,3,4,5,6)
#結果
(1,2,3,4,5,6)

打包為字典

?
1
2
3
4
5
def demo(**p):
  print(p)
demo(x=1,y=2,z=3)
#結果
{'x':1,'y':2,'z':3}

#參數的打包就是將形參設為*參數名形式,實參為多個參數,這是后會將多個參數處理為元組或字典的可迭代對象,是把個體打包為整體。

解包

? 與參數的打包相對應,參數的解包同樣也有s和**s兩種形式,調用含有多個位置參數的函數時,可以使用列表,元組,集合等可迭代對象作為實參,在實參名前面加一個,Python會自動對其進行解包,并把序列中的值分別傳遞給多個形參變量。

?
1
2
3
4
5
6
def demo(a,b,c,d):
  print(a+B*c/d)
list1=[1,2,3,4]
demo(*list1)
#結果
2.5

? 如果實參是一個字典,可以使用**參數名的形式對其進行解包操作,會把字典轉換成為類似關鍵參數的形式進行參數傳遞。對于這種形式的序列解包,要求實參字典中的所有鍵必須是函數形參的名稱,或者與函數中兩個型號的可變長度參數相對應。

?
1
2
3
4
5
6
s={'a':1,'b':2,'c':3}
def demo(a,b,c=4)
  print(a,b,c)
demo(**s)
#結果
1 2 3

三、變量的作用域

變量的作用域就是變量能夠作用的空間

變量按照作用域劃分:全局變量,局部變量

全局變量:在函數體外定義的變量為全局變量

全局變量在函數內外都能夠使用,但在函數內不能直接修改全局變量, 如果在函數內修改全局變量,必須添加 global 關鍵字(python不推薦在函數內修改全局變量的值)

局部變量:在函數內定義的變量為局部變量

局部變量是在函數內定義的變量,在函數體外局部變量是無效的

在函數內定義的局部變量和函數外定義的全局變量是兩個概念(變量同名)

?
1
2
3
4
a=1
def sum()
  a=3
#這里函數外的a和函數內的a是兩個變量

四、變量的文檔注釋和變量名

1、函數doc文檔

函數doc文檔是用于描述函數功能,是函數內的特殊注釋

?
1
2
3
4
5
def sum(a,b):
  '''
  返回兩個數的和
  '''
  return a+b

2、函數名的獲取

__name__方法

?
1
2
3
>>> print(print.__name__)
print
>>>

3、函數doc文檔的獲取

__doc__方法

 總結

 

本篇文章就到這里了,希望能夠給你帶來幫助,也希望您能夠多多關注服務器之家的更多內容!

原文鏈接:https://blog.csdn.net/zhangjiachen2001/article/details/121482318

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: α级毛片 | 欧美视频一区二区三区在线观看 | 亚洲男人天堂a | 亚洲天堂网在线观看视频 | 亚洲福利天堂 | 禁忌第一季第3季 | 久久这里都是精品 | 美女女女女女女bbbbbb毛片 | 麻生希在线观看 | 日本三级s级在线播放 | 久久久久久久国产精品视频 | 欧美摘花破处 | 国产亚洲精品综合在线网址 | 亚洲香蕉伊在人在线观看9 亚洲系列国产系列 | 亚洲精品一区二区久久久久 | 青青青在线观看国产精品 | 亚洲系列国产系列 | 亚洲欧美久久久久久久久久爽网站 | 日韩美女强理论片 | 国产福利视频一区二区微拍 | 免费观看大片毛片 | 高清女主播一区二区三区 | 扒开双腿疯狂进出爽爽动态图 | 亚洲欧洲日产国码天堂 | 国产欧美国产综合第一区 | 国产资源一区 | 日韩精选视频 | 日韩在线a视频免费播放 | 天堂资源在线www中文 | 99福利视频导航 | 亚洲男人第一天堂 | 99视频在线免费 | 久久视频在线视频观看精品15 | 青青在线香蕉国产精品 | 亚洲第9页| 成人久久18网站 | 动漫美女被褥吸奶漫画漫画 | avove本人照片 | 国产欧美亚洲精品第一页青草 | 波多野结在线观看 | 欧美亚洲国产成人不卡 |