python3 開啟檔案失敗的異常處理的問題

2021-09-02 18:39:29 字數 1023 閱讀 1492

解決方法主要使用了locals()

具體問題如下:

#coding = utf-8

try:

f =open

('乙個不存在的檔案.txt'

,'r'

)print

(f.read())

except oserror as reason:

print

('出錯啦!'

+str

(reason)

)finally

: f.close(

)'''

**會產生這樣的提示錯誤,這說明沒有成功開啟檔案,

所做的異常處理沒有起到作用,在finally語句中,關閉乙個未開啟的檔案,自然還會出錯

f.close()

nameerror: name 'f' is not defined

'''

錯誤如下:

**會產生這樣的提示錯誤,這說明沒有成功開啟檔案,

所做的異常處理沒有起到作用,在finally語句中,關閉乙個未開啟的檔案,自然會出錯

解決方法:

使用locals(),locals()是當前區域性變數符號表

如果f成功開啟,則f就會在locals()內;直接判斷f是否在locals()內即可

#coding = utf-8

try:

f =open

('乙個不存在的檔案.txt'

,'r'

)print

(f.read())

except oserror as reason:

print

('出錯啦!'

+str

(reason)

)finally

:if f in

locals()

: f.close(

)

python3中異常處理 Python3異常處理

python的異常處理機制 使用 try.except 捕獲異常 try 業務實現 except error1,error2,as e 出現異常後的處理 異常類的繼承關係 baseexception systemexit keyboardinterrupt generatorexit excepti...

python3 開啟網頁方法

目前已知有兩種方法自動開啟網頁,selenium webdriver 和webbrowser。首先需要安裝selenium和webdriver pip install selenium from selenium import webdriver driver webdriver.chrome wi...

python 3讀取檔案 Python3 檔案讀寫

python open 方法用於開啟乙個檔案,並返回檔案物件,在對檔案進行處理過程都需要使用到這個函式 1.讀取檔案 with open test json dumps.txt mode r encoding utf 8 as f seek 移動游標至指定位置 f.seek 0 read 讀取整個檔...