人生苦短我學Python (六)函式

2021-09-28 15:25:18 字數 2520 閱讀 3406

成長很苦,進步很甜,希望我們大家每天都能夠向上生長。

函式的概念引用一下菜鳥教程上的:

函式是組織好的,可重複使用的,用來實現單一,或相關聯功能的**段。

函式能提高應用的模組性,和**的重複利用率。你已經知道python提供了許多內建函式,比如print()。但你也可以自己建立函式,這被叫做使用者自定義函式。

定義乙個函式如下:

def

function_name()

:"""

這是函式的注釋

:return:

"""# 這裡都是函式的內容

function_name(

)# 這是函式的呼叫

函式名的命名要求與變數命名保持一致

函式定義時()內的引數叫形參,函式呼叫時()內的引數叫做實參

函式呼叫時需要傳遞相對應的引數,可傳遞的引數型別有以下幾種:

必須引數

def

bixu

(num)

:"""

輸出乙個數字與1相加的和

:return:

"""num_sum = num +

1print

(num_sum)

bixu(

)

呼叫時不傳必須引數報錯截圖

關鍵字引數

def

guanjian

(name,age)

:"""

輸出乙個人的姓名和年齡

:return:

"""print

("{}的年齡是{}"

.format

(name,age)

)

guanjian(

"grassroadsz",18

)

正確的輸入輸出:

錯誤輸出

預設引數

def

moren

(name,age=18)

:"""

輸出任何人的姓名和年齡

:return:

"""print

("{}的年齡是{}"

函式呼叫時只是傳了乙個姓名,並沒有傳遞年齡引數。所以age預設為18

當傳遞了age引數時,則預設引數的值會被覆蓋

不定長引數

有時候傳遞實參時,實參的個數不定,這時候就需要用到不定長引數,其中位置引數的不定長引數的關鍵字是args,乙個會將傳入的不定長引數打包成乙個元組,關鍵字引數的關鍵字是**kwargs,**會將傳入的不定長關鍵字引數打包成乙個字典

拆包(使用乙個*)字典拆包針對與key而非value

return返回值

當函式呼叫結束後需要對函式呼叫後的結果有個反饋,這個時候就需要用return,return預設返回為none

def

sum( num1, num2 )

:# 返回2個引數的和."

total = num1 + num2

print

("函式內 : "

, total)

return total

# 呼叫sum函式

total =

sum(10,

20)print

("函式外 : "

, total)

# 輸出結果

函式內 :

30函式外 :

30

作用域

python中的變數在訪問時並不是想訪問就能訪問到的,是有一定的許可權的,許可權由定義變數的位置決定

順序為:

區域性 —》函式閉包外 —》全域性變數 —》模組

變數位於函式內部時叫做區域性變數,位於函式外部時叫做全域性變數;

區域性變數的作用域只在函式內部生效,當想要將函式內部的區域性變數修改為全域性變數時需使用global value_name 來修改。

概念性的東西較多,我自己也是知之甚少,有錯誤之處,歡迎指正。

人生苦短,我學Python(三)

寫在文末的話 我們在程式編寫的過程當中,很有可能會使用不同的資料之間的對應關係,比如一系列單詞對應的翻譯資訊 一系列任命對應的 等,字典能夠讓我們的程式中資料元素之間的關係變得更加符合我們的需求,而不是自己建立對應關係。下面為最基本的字典用法 player print player name pri...

人生苦短,我學 Python 序言

前言 本專欄在保證內容完整性的基礎上,力求簡潔,旨在讓初學者更快地入門python。這個python學習專欄我打算分三個階段 基礎知識 高階知識 實戰訓練。這將是一套完整 高效 循序漸進的python系列講解,您亦可以當做python學習的入門教程。人生苦短,我學 python 基礎篇 初步認識 d...

python人生苦短 人生苦短,我用Python

python學習筆記 每日總結,反思.學習,1,注釋 單行注釋 注釋內容 多行注釋 注釋內容 快捷鍵 ctrl 2,變數 type 變數 用來檢視變數型別 變數型別,程式中需要特別注意變數型別,很容易報錯,或者很熟悉變數型別的報錯,錯了再改也成.格式轉化 紅線常用 bool布林型別 ture和fla...