Python 學習筆記6 函式

2021-10-05 14:43:16 字數 3342 閱讀 2091

在python中,function是一組執行特定任務的相關語句。

函式有助於將我們的程式分解為更小的模組化塊。隨著我們的計畫越來越大,功能使其更加有條理和易於管理。

此外,它避免重複並使**可重用

def

function_name

(parameters)

:"""docstring"""

statement(s)

上面顯示的是乙個函式定義,它由以下元件組成。

關鍵字def標記函式頭的開始。

用於唯一標識它的函式名稱。函式命名遵循在python中編寫識別符號的相同規則。

引數(引數),我們通過它將值傳遞給函式。它們是可選的。

冒號(:)標記函式頭的結尾。

用於描述函式功能的可選文件字串(docstring)。

構成函式體的乙個或多個有效的python語句。語句必須具有相同的縮排級別(通常為4個空格)。

用於從函式返回值的可選return語句。

一旦我們定義了乙個函式,我們就可以從另乙個函式,程式甚至python提示符中呼叫它。要呼叫函式,我們只需使用適當的引數鍵入函式名稱

name=

'shadow'

defgetname

(a):

'''這是乙個獲取我的名字的函式'''

print

('my name is'

,a)getname(name)

函式頭之後的第乙個字串稱為docstring,是文件字串的縮寫。它用於簡要解釋函式的作用。

雖然可選,但文件是一種很好的程式設計習慣。除非你能記住你上週吃的晚餐,否則請記錄你的**。

在上面的示例中,我們在函式頭的正下方有乙個docstring。我們通常使用三引號,以便docstring可以擴充套件到多行。我們可以將此字串作為函式的__doc__屬性使用。

name=

'shadow'

defgetname

(a):

'''這是乙個獲取我的名字的函式'''

print

('my name is'

,a)getname(name)

print

(getname.__doc__)

name=

'shadow'

defgetname

(a):

'''這是乙個獲取我的名字的函式'''

print

('my name is'

,a)print

(getname(name)

)def

ifodd

(m):

if m%2==

0:return

'it is not odd'

else

:return

'it is odd'

print

(ifodd(10)

)

變數的範圍是程式中識別變數的部分。函式內定義的引數和變數在外部不可見。因此,它們具有區域性範圍。

變數的生命週期是變數在儲存器中退出的時間段。函式內部變數的生命週期與函式執行的時間一樣長。

一旦我們從函式返回它們就會被銷毀。因此,函式不記得先前呼叫的變數值。

下面是乙個示例,用於說明函式內部變數的範圍。

def

my_func()

: x =

10print

("value inside function:"

,x)x =

20my_func(

)print

("value outside function:"

,x)

情況一,不給引數會報錯:

def

my_func

(x):

print

("value inside function:"

,x)my_func(

)

情況二:給預設的引數

def

my_func

(x=11111):

print

("value inside function:"

,x)my_func(

)

結果:

情況三:有預設引數且給了引數

def

my_func

(x=11111):

print

("value inside function:"

,x)my_func(

2222

)

一旦我們有乙個預設引數,它右邊的所有引數也必須有預設值。

這意味著,非預設引數不能遵循預設引數。

)有時,我們事先並不知道將傳遞給函式的引數數量.python允許我們通過具有任意數量引數的函式呼叫來處理這種情況。

在函式定義中,我們在引數名稱前使用星號(*)來表示這種引數。這是乙個例子。

def

my_func

(*names)

:for name in names:

print

('hi'

,name)

my_func(

100)

my_func(

'aaa'

,'bbb'

,'vvv'

)

def

my_func

(names)

: empty=

for name in names:

if name not

in empty:

return empty

print

(my_func([1

,2,3

,4,2

,3,7

,8,9]))

Python學習筆記 6 函式

定義函式 def name pass 引數位置按照順序排列並傳遞。使用 收集位置引數 當 用在函式內部的時候,星號將一組可變數量的位置引數集合成引數值的元組。例如 def print aa aa print aa print aa 3,1,2,huawei out 45 3,1,2,huawei 注...

筆記 6 Python學習 函式

def 函式名 呼叫 函式名 乙個函式引數 def second name print name 我愛你!second 花花 花花我愛你!多個函式引數 def add num1,num2 result num1 num2 print result add 1,2 3函式的返回值return def ...

Python入門學習筆記6 函式

1 函式 2 引數3 1.必須引數 2.關鍵字引數 3.預設引數 4.形式引數 形參 4 round 操作變數,保留小數點幾位,且四捨五入 5 a 1.12386 6print round a,3 1.12478 9def functionname str 10print str 11return ...