1.open
使用open打開文件后一定要記得調用文件對象的close()方法。比如可以用try/finally語句來確保最后能關閉文件。
file_object = open('thefile.txt')try: all_the_text = file_object.read( )finally: file_object.close( )
注:不能把open語句放在try塊里,因為當打開文件出現異常時,文件對象file_object無法執行close()方法。
2.讀文件
讀文本文件
input = open('data', 'r')#第二個參數默認為rinput = open('data')
讀二進制文件
input = open('data', 'rb')
讀取所有內容
file_object = open('thefile.txt')try: all_the_text = file_object.read( )finally: file_object.close( )
讀固定字節
file_object = open('abinfile', 'rb')try: while True:chunk = file_object.read(100)if not chunk:breakdo_something_with(chunk)finally: file_object.close( )
讀每行
list_of_all_the_lines = file_object.readlines( )
如果文件是文本文件,還可以直接遍歷文件對象獲取每行:
for line in file_object:
process line
3.寫文件
寫文本文件
output = open('data', 'w')
寫二進制文件
output = open('data', 'wb')
追加寫文件
output = open('data', 'w+')
寫數據
file_object = open('thefile.txt', 'w')file_object.write(all_the_text)file_object.close( )
寫入多行
file_object.writelines(list_of_text_strings)
注意,調用writelines寫入多行在性能上會比使用write一次性寫入要高。
新聞熱點
疑難解答