[TOC]
*****
保存數據的最簡單的方式之一是將其寫入到文件中。通過將輸出寫入文件,即便關閉包含程序輸出的終端窗口,這些輸出也依然存在:你可以在程序結束運行后查看這些輸出,可與別人分享輸出文件,還可編寫程序來將這些輸出讀取到內存中并進行處理。
## 10.2.1 寫入空文件
要將文本寫入文件,你在調用open()時需要提供另一個實參,告訴Python你要寫入打開的文件。
```
filename = 'programming.txt'
with open(filename, 'w') as file_object:
file_object.write("I love programming.")
```
調用open()時提供了兩個實參。第一個實參也是要打開的文件的名稱;第二個實參('w')告訴Python,我們要以寫入模式打開這個文件。
打開文件時,可指定讀取模式('r')、 寫入模式('w')、 附加模式('a')或讓你能夠讀取和寫入文件的模式('r+')。如果你省略了模式實參, Python將以默認的只讀模式打開文件。
如果寫入的文件不存在,函數open()將自動創建該名字的空文件。
**注意**
以寫入('w')模式打開文件時千萬要小心,因為如果指定的文件已經存在, Python將在返回文件對象前清空該文件。
Python只能將字符串寫入文本文件。要將數值數據存儲到文本文件中,必須先使用函數str()將其轉換為字符串格式。
## 10.2.2 寫入多行
函數write()不會在你寫入的文本末尾添加換行符
```
filename = 'programming.txt'
with open(filename, 'a') as file_object:
file_object.write("I also love finding meaning in large datasets.")
file_object.write("I love creating apps that can run in a browser.")
```
輸出結果,兩行連在一起
```
I love programming.I love creating new games.
```

## 10.2.3 附加到文件
如果你要給文件添加內容,以附加模式打開文件。你寫入到文件的行都將添加到文件末尾。如果指定的文件不存在, Python將為你創建一個空文件。
