python 入門學習(八)

2021-09-06 17:59:04 字數 2709 閱讀 8114

異常處理:

python在遇到問題時會自動引發異常,也可以用raise故意引發異常,異常種類必須是已有的

>>> raise ioerror('

this is a test.')

traceback (most recent call last):

file

"", line 1, in

raise ioerror('

this is a test.')

oserror: this

is a test.

ioerror:打不開相應檔案

zerodivisionerror:除以0

syntaxerror:語法錯誤

捕獲異常:

try/expect

def

get_age():

while

true:

try:

n = int(input('

how old are you?'))

return

n

except

valueerror:

print('

please enter an integer value.

')

>>>get_age()

how old are you?a

please enter an integer value.

how old are you?-2

-2

捕獲多種異常:把多個異常種類括起來就好了

def

convert_to_int1(s,base):

try:

return

int(s,base)

except

(valueerror, typeerror):

return

'error

'

>>> convert_to_int1(100,5)

'error

'>>> convert_to_int1(5,100)

'error

'>>> convert_to_int1('

100',5)

25

分別處理不同的異常:用多個except

def

convert_to_int2(s,base):

try:

return

int(s,base)

except

valueerror:

return

'value error

'except

typeerror:

return

'type error

'

>>> convert_to_int2(100,5)

'type error

'>>> convert_to_int2('

100',1)

'value error

'

捕獲所有異常:except後面不加異常型別

def

convert_to_int3(s,base):

try:

return

int(s,base)

except

:

return

'error

'

>>> convert_to_int3('

100',5)

25

清理操作:finally無論是否引發異常都會執行

def

invert(x):

try:

return 1/x

except

:

return

'error

'finally

:

print('

invert(%s) done

' %x)

>>> invert(2)

invert(2) done

0.5>>>invert(0)

invert(0) done

'error

'

with盡早執行清理操作

下面**將在for迴圈後立刻關閉檔案

def

add_linenum(fname):

num = 1with open(fname,'r

') as f:

for line in

f:

print('

%04d %s

' %(num,line), end =''

) num = num+1

>>> add_linenum('

story.txt')

0001story

0002

0003mary had a litte lamb,

0004 and then she had some more.hahaha!!

Python入門系列(八)

python讀取檔案 首先,我們新建乙個叫做ex15 sample.txt的txt檔案 檔案內容如下 i want to open this file and read it在使用ar 函式之前,我們先嘗試著讀取一下這個檔案試試,如下 txt open ex15 sample.txt txt.rea...

Linux入門學習(八)

服務狀態 systemctl status服務名稱 loaded 系統服務已經初始化完成,載入過配置 active running 正有乙個或多個程式正在系統中執行,vsftpd 就是這種模式 atcive exited 僅執行一次就正常結束的服務,目前並沒有任何程式在系統中執行 atcive wa...

八 Python入門 異常處理

異常是乙個事件,該事件會在程式執行過程中發生,一般情況下,在python中無法處理程式時就會發生異常,當python指令碼發生異常時,我們需要捕獲並處理異常,否則程式就會終止執行 try 可能會出錯的語句 except exception as e 異常處理 常見的錯誤和異常 可能會報錯或出現異常的...