python學習筆記(二) python基礎函式

2021-08-17 18:55:54 字數 2429 閱讀 9849

python之所以強大好用,離不開可以呼叫的各種庫,同時也和他自身函式相關,下面為學習python函式相關知識後整理知識點。

1、python函式引數:

python函式定義簡單但靈活度非常大。除正常定義的必選引數外,還可以使用預設引數,可變引數,關鍵字引數。

預設引數:def power(5 , x = 2)在函式介面直接賦值。可傳參改變大小,可省略引數。

注意事項:1、

必選引數在前,預設引數在後,否則python的直譯器會報錯

2、設定預設引數:當函式有多個引數時,把變化大的引數放前面,變化小的引數放後 面。變化小的引數就可以作為預設引數。

當有多個預設引數時,預設引數不按照順序傳,需要帶上名字,讓程式知道是給那個引數賦值。

定義預設引數:要牢記一點:預設引數必須指向不變物件!

定義可變引數:

定義可變引數和定義乙個list或tuple引數相比,僅僅在引數前面加了乙個*號。

nums = [1,2,3]

*nums表示把nums這個list的所有元素作為可變引數傳進去。

可變引數允許你傳入0個或任意個引數,這些可變引數在函式呼叫時自動組裝為乙個tuple。

關鍵字引數:

關鍵字引數允許你傳入0個或任意個含引數名的引數,這些關鍵字引數在函式內部自動組裝為乙個dict。

extra =

person(

'jack'

, 24

, **extra)

**extra表示把extra這個dict的所有key-value用關鍵字引數傳入到函式的**kw引數,kw將獲得乙個dict,注意kw獲得的dict是extra的乙份拷貝,對kw的改動不會影響到函式外的extra。

命名關鍵字引數:必須傳入引數名

和關鍵字引數

**kw

不同,命名關鍵字引數需要乙個特殊分隔符*,

*後面的引數被視為命名關鍵字引數。

def

person

(name, age, *, city, job):

如果函式定義中已經有了乙個可變引數,後面跟著的命名關鍵字引數就不再需要乙個特殊分隔符

*

了:

def

person

(name, age, *args, city, job):

引數定義的順序必須是:必選引數、預設引數、可變引數、命名關鍵字引數和關鍵字引數。

2、python的函式呼叫&函式定義:

呼叫函式:函式名(引數)

abs(x):求絕對值

max(1,2,3......)引數任意多個,求最大值

資料型別轉換:

int():把其他型別轉換為整型。int('123')

str():把其他型別轉換為字串。 str(123)

把函式名賦給變數,相當於給函式起了個別名。

函式定義:def 函式名(引數):

在縮排塊中編寫函式體,返回值用return返回。

如果函式儲存在檔案中,在python直譯器中匯入:

from 檔名 import 函式名 不含.py副檔名

空函式:函式體用pass,表示什麼也不做。

引數檢查:

對引數型別做檢查:isinstance()

def

my_abs

(x):

if

not

isinstance(x, (int, float)): x只允許整型和浮點型

raise

typeerror(

'bad operand type'

)if

x >= 0:

return

xelse

:return

-x返回多個值:函式可以返回多個值,也就是乙個tuple。

匯入math包可以引用math包裡函式:import math

定義函式時,需要確定函式名和引數個數;

如果有必要,可以先對引數的資料型別做檢查;

函式體內部可以用return隨時返回函式結果;

函式執行完畢也沒有return語句時,自動return none。

函式可以同時返回多個值,但其實就是乙個tuple。

怎樣學習python語言 如何學習python語言

python語言很神秘嗎 python作為一款類自然語言的程式語言,很方便的就可以上手,而且可以說是老少皆宜。用python程式設計非常簡單,只要有一台電腦 無論windows或者蘋果 就可以完成python程式設計。完成python程式設計首先需要在電腦上安裝python環境,安裝完成後就可以開始...

python學習筆記(二)

集合 set是可變的集合,frozenset是不可變的集合 1.構造集合 s set abcde s set a b c s set abc def ghi s frozenset abcde 2.集合操作 1.新增元素 s.add b 2.刪除元素 s.remove obj 當該元素不存在時丟擲異...

Python學習筆記(二)

換了本書,開始看 python核心程式設計 從第三章開始看。只記一些與c c 不同的地方,一些相同之處略去不提。3.1語句與語法 1 跨行一般用反斜槓 有兩個例外,乙個是在括號裡,二是三引號中 print what the hell you waiting for?2推薦用四個空格寬度代替製表符縮排...