python學習之函式與異常

2021-10-19 08:21:07 字數 1395 閱讀 5463

1、python函式

'''函式引數的傳遞'''

defcalc

(a,b)

: c=a+b

return c

#1.位置實參

result=calc(10,

20)print

(result)

#關鍵字實參

result1=calc(b=

20,a=10)

print

(result1)

'''函式內部的的引數傳遞'''

'''如果是不可變物件,在函式體內不會影響實參的值,

如果是可變物件,在函式體的修改會影響到實參的值

''''''函式的返回值'''

'''(1)如果沒有返回值,return可以省略不寫

(2)返回值如果是乙個,直接返回型別

(3)如果返回值是多個,返回結果為元組

'''#個數可變的位置引數,返回元組

deffun

(*args)

:print

(args)

fun(

100,

200,

190)

#個數可變的關鍵字引數,返回值為字典形式

deffun1

(**args)

:print

(args)

fun1(a=10)

fun1(a=

100,b=50)

#可變的位置引數只能是1個,位置可變的關鍵字引數,只能有乙個

#在乙個函式的定義過程中,既有個數可變的關鍵字形參,也有個數可變的位置形參,要求:個數可變的位置形參,放在個數可變的關鍵字形參之前

lis=[22

,33,4

]fun(

*lis)

#將序列中的每個元素轉化為位置實參,使用*

dic=

fun1(

**dic)

#將字典中的每個鍵值對轉化為關鍵字實參,使用**

2、異常捕獲

①捕獲異常的順序按照先子類後父類的順序,為了避免遺漏可能出現的異常,可以在最後增加baseexception

②try……except……else結構:

如果try沒有丟擲異常,則執行else塊,如果try丟擲異常,則執行except塊

③try……except……else……finally結構:

finally語句,無論程式是否出錯都會執行

④traceback模組

python學習之異常

多個execpt捕獲異常 try x input enter the first number y input enter the second number print int x int y except zerodivisionerror print the second number can...

python學習之異常

attributeerror 試圖訪問乙個物件沒有的樹形,比如foo.x,但是foo沒有屬性x ioerror 輸入 輸出異常 基本上是無法開啟檔案 importerror 無法引入模組或包 基本上是路徑問題或名稱錯誤 indentationerror 語法錯誤 的子類 沒有正確對齊 indexer...

Python學習之異常處理

具體 詳見 異常即是乙個事件,該事件會在程式執行過程中發生,影響了程式的正常執行。一般情況下,在python無法正常處理程式時就會發生乙個異常。異常是python物件,表示乙個錯誤。當python指令碼發生異常時我們需要捕獲處理它,否則程式會終止執行。捕捉異常可以使用try except語句。try...