首頁 > 後端開發 > Python教學 > python3學習之異常處理及文件的各種操作

python3學習之異常處理及文件的各種操作

little bottle
發布: 2019-04-28 15:44:47
轉載
2562 人瀏覽過

本篇文章主要講述的是Python3的異常處理以及文件的各種操作,具有一定的收藏價值,有興趣的朋友可以了解一下,希望對你有所幫助。

異常處理:是為了避免程式因為一個小問題而導致程式終止

try:

可能出現異常的程式碼區塊

# except:

出現異常的處理方法

else:

沒出錯時要執行的程式碼

函數中如果出現異常,處理之後會正常執行,沒有處理,異常會拋給調用處,在調用處處理,如果一直到全局作用域,沒有處理,則出現異常,程序終止

出現異常以後,所有異常信息會被保存在一個在專門的異常物件中,而異常傳播時,實際上就是將異常物件拋給了呼叫處

except後沒有跟異常類型,會捕獲所有異常,如果寫了固定異常類型,則只會捕獲該類型異常,except可寫多個,同時捕獲多種不同的異常,最後一個except一般寫except Exception:捕獲所有異常

except Exception as 變量名:將捕獲到的異常對象賦值給某變數

最後可跟finally:語句:無論有沒有出現異常,finally語句都會執行

try是必須的,else有沒有都可以,except和finally至少要有一個

raise用於向外部拋出異常,後面可以跟一個異常類,或異常類的實例

raise Exception 拋出異常

raise Exception('錯誤字串') 拋出異常並提示#​​

##自訂異常:

class 類別名稱(異常類型):

程式碼區塊

拋出自訂例外:

raise 自訂異常類別名稱

io流:

open(檔案路徑) 開啟檔案,返回檔案物件

with...as語句:

with open(file_path) as file:

content = file.read()

print(content)

##read()可以接收一個size為參數,該參數用來指定要讀取的字元的數量,預設值為-1,它會讀取檔案中的所有字元

檔案物件.readline()方法,一次讀取一行

檔案物件.readline(讀到的內容,end='') 讀取一行之後不換行

檔案物件.readlines() 用於一行一行的讀取,一次性將讀取到的內容封裝到一個清單中返回

open開啟一個文件,可以將文件分為兩種類型

1.純文字文件,使用utf-8等編碼編寫的文字文件

2.二進位檔案(圖片,mp3,ppt等等)

#open開啟檔案時,預設是以文字檔案的形式打開,但是open預設的編碼為None,指定編碼:

with open(path,encoding='碼表') as file

#檔案寫入:

##write()方法寫入內容到文件中,如果操作的是一個文字檔案的話,則write()需要傳遞一個字串作為參數,寫入完成後,會傳回寫入的字元個數

#使用open開啟檔案時,必須制定開啟文件所需要做的操作(讀、寫、追加),如果不指定操作類型,則預設是讀取檔:

r 表示只讀

w 表示可寫,使用w來寫入文件時,如果文件不存在則會創建文件,存在則會刪除原有內容,寫入新內容

a 表示追加內容,文件不存在會創建文件,存在則會向文件中追加內容

r 可讀可寫,檔案不存在報錯

w 可讀可寫,檔案不存在建立

a 可讀可寫,檔案不存在創建

x 新文件,文件不存在則創建,存在則報錯

t 讀取文字檔(預設值)

b 讀取二進位文字

rb 讀取二進位文字

讀取文字時,size以字元為單位

讀取二進位檔案時,size以位元組為單位

物件名稱.tell () 目前讀取的位置

物件名稱.seek(開始讀取的位置) 修改目前讀取的位置

seek兩個參數:

1.要切換到的位置

2.計算位置方式

可選值:

0.從頭計算,預設值

1.從目前位置計算

2.從最後位置開始計算

中文:三個位元組=1個字元

os模組:

os.listdir() 取得目前目錄清單

os.getcwd() 取得目前所在目錄

os.chdir(目錄) 切換目錄

os.mkdir(目錄名稱) 建立目錄

os.rmdir(目錄名稱) 刪除目錄

os.remove('檔案名稱') 刪除檔案

os.rename('舊名字','新名字') 重命名也可以剪切檔案

相關教學:

Python3影片教學

#

以上是python3學習之異常處理及文件的各種操作的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:51cto.com
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板