《Python程式設計從入門到實踐》記錄之檔案寫入
阿新 • • 發佈:2018-11-30
1、檔案寫入
通過一個例子來講解檔案寫入。下邊例子假設我們需要將一條簡單的訊息儲存到檔案中,類似程式碼如下:
#!/usr/bin/env python # -*- coding:utf-8 -*- filename = 'programing.txt' # 寫的方式開啟檔案 with open('programing', 'w') as file_object: file_object.write('I love programing.') # 檔案寫入 file_object.write('I love creating new games.\n') #write不會自動換行,需要人工加換行符 file_object.write('I love interesting games!\n')
執行結果(執行程式目錄出現programing.txt檔案):
由上述程式碼分析檔案寫入方法:
open()函式:
- open()函式有兩個實參,第一個是開啟檔名稱,第二個實參('w')告訴Python以寫入模式開啟這個檔案。
- 在開啟檔案時,我們可以指定開啟模式:讀取模式('r')、寫入模式('w')、附加模式('a')、讀取和寫入檔案模式(‘r+’)。如果省略模式實參,Python將以預設的只讀模式開啟檔案。
- 如果寫入的檔案不存在,函式open()將自動建立它。以寫入('w')模式開啟檔案時,如果指定的檔案已經存在,Python將在返回檔案物件前清空該檔案。
write()方法:
- write()方法將一個字串寫入檔案
- Python只能將字串寫入文字檔案。若要將資料儲存到文字檔案中,必須先使用函式str()將其轉換為字串格式。
- write()方法不會在寫入的文字末尾新增換行符,如需換行,需要手動新增換行符,如file_object.write('I love creating new games.\n')
- 像顯示到終端到輸出一樣,可以使用空格、製表符、空行來設定這些輸出的格式。
2、附加到檔案
如果要給檔案新增內容,而不是覆蓋原有的內容,可以附加模式開啟檔案。以附加模式開啟檔案時,Python不會在返回檔案物件前清空檔案
如果指定的檔案不存在,Python將為你建立一個空檔案。所以,個人覺得如果需要寫入檔案,可以用此種模式開啟。如果你想覆蓋檔案,那就用寫('w')模式開啟。
下邊例子是附加到檔案的程式碼,基於上述程式碼執行的programing.txt檔案,以附加模式開啟,寫入檔案:
#!/usr/bin/env python
# -*- coding:utf-8 -*-
filename = 'programing.txt'
# 寫的方式開啟檔案
with open('programing', 'a') as file_object:
file_object.write('I also love finding meaning in large datasets.\n')
file_object.write('I love creating apps that can run in a browser!\n')
執行結果: