2、写入文件:
保存数据的最简单的方式之一是将其写入到文件中。你 可 以 在 程 序 结 束 运 行 后 查 看 这 些 输 出, 可 与 别 人 分 享 输 出 文 件, 还 可 编 写 程 序 来 将 这 些 输 出 读 取 到 内 存 中 并 进 行 处 理。
2.1、写入空文件:
例1、write_message.py
filename = 'programming.txt'
with open(filename,'w') as file_object:
file_object.write("I love programming.")
程序解析:
- 这个示例中,调用open()时提供了两个实参;第一个实参是要打开的文件名称;第二个实参(‘w’)告诉python,我们要以写入模式打开这个文件。
- 打开文件时,可指定读取模式(‘r’)、写入模式(‘W’)、附加模式(‘a’)。
- (‘r+’)是能够读取和写入文件的模式;如果你省略了模式实参,python将以默认的只读模式打开文件。
- ==注意1:==如果你要写入的文件不存在,函数
open()
将自动创建它。然而要以写入(‘w’)模式打开文件时千万要小心,因为如果指定的文件已经存在,python将在返回文件对象前清空该文件。 - 文件对象的方法
write()
将一个字符串写入文件。 - ==注意2:==Python只能将字符串写入文本文件。将数值数据存储到文本文件中,必须先使用
str()
将其转换为字符串格式。
2.2、写入多行:
函数write()
不会再你写入的文本末尾添加换行符,因此如果你写入多行时没有指定换行符,文件看起来可能不是你希望的输出模式:
例2:
filename = 'programming.txt'
with open(filename,'w') as file_object:
file_object.write('I love programming.')
file_object.write('I love creating new game.')
#输出:
I love programming.I love creating new games.
#让每个字符串单独占一行,需要在write()语句中包含换行符。
with open(filename,'w') as file_object:
file_object.write('I love programming.\n')
file_object.write('I love creating new game.\n')
I love programming.
I love creating new games.
2.3、附加到文件:
如果你要给文件添加内容,而不是覆盖原有的内容,可以附加模式打开文件。
例3:
filename = 'programming.txt'
❶ with open( filename, '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")
#输出文件结果:
I love programming.
I love creating new games.
I also love finding meaning in large datasets.
I love creating apps that can run in a browser.
本章代码示例来自:[美] Eric Matthes. Python编程:从入门到实践