Crossin 8-3;8-4
8-3
文件打開模式:
r:只讀模式、默認
w:只寫模式、會先清空文件
a:追加寫入模式,在文件末尾寫入,不可讀
r+:打開一個文件用於讀寫。文件指針將會放在文件的開頭,原文件內容不會清空
b:二進制模式,與前面幾種模式並存
w+:打開一個文件用於讀寫。如果該文件已存在則將其覆蓋,如果該文件不存在,創建新文件愛你
wb+:以二進制格式打開一個文件用於讀寫。如果該文件已存在則將其覆蓋,不存在創建新文件
a+:打開一個文件用於讀寫。如果該文件已存在,文件指針將會放在文件的結尾。追加寫入。
不存在則創建新文件
ab+:……
模式很多,但是並不難記。
主要的模式只有三種 r:只讀;w:重寫; a:追加;
這三種模式的變型 b:二進制; +:讀寫合一;
變型只能附加在主模式上,兩者一組合,就有了這些看起來復雜的模式。
Tips:
b 二進制模式主要用於圖片、音頻、視頻等多媒體文件的讀寫;
a 是在文件末位追加信息,r+ 是在文件開頭追加信息
-------------------------------------------------------------
write:寫入
writelines:按行寫入,但不會自主換行需加“\r\n”
8-4異常處理
try:
XXXXXX #可能引發異常的代碼
except:
XXXXXXX #異常處理代碼
else:
XXXXXX #未發生異常時執行
finally:
XXXXX #結束異常處理前執行
IOError:輸入/輸出操作失敗
ValueError:傳入無效的參數
ImportError:導入模塊/對象失敗
IndexError:序列中沒有此索引
NameError:未聲明/初始化對象
SyntaxError:語法錯誤
IndentationError:縮進錯誤
TypeError:對類型無效的操作
ZeroDivisionError:除零錯誤
添加具體異常處理代碼:
try:
XXXX
except IOError:
XXXX
註:未註明錯誤類型的異常處理,要放在最後
輸出異常內容方法:
try:
XXXX
except IOError,e:#為異常內容定義一個變量e存放
XXXX
print e
except Exception,f#為異常內容定義一個變量f存放
XXXX
Crossin 8-3;8-4