前面章节中学习了如何使用 read()、readline() 和 readlines() 这 3 个函数读取文件,如果我们想把一些数据保存到文件中,又该如何实现呢?
Python 中的文件对象提供了 write() 函数,可以向文件中写入指定内容。该函数的语法格式如下:
file.write(string)
其中,file 表示已经打开的文件对象;string 表示要写入文件的字符串(或字节串,仅适用写入二进制文件中)。
注意,在使用 write() 向文件中写入数据,需保证使用 open() 函数是以 r+、w、w+、a 或 a+ 的模式打开文件,否则执行 write() 函数会抛出 io.UnsupportedOperation 错误。
例如,创建一个 a.txt 文件,该文件内容如下:
C语言中文网
http://c.biancheng.net
然后,在和 a.txt 文件同级目录下,创建一个 Python 文件,编写如下代码:
- f = open("a.txt", 'w')
- f.write("写入一行新数据")
- f.close()
前面已经讲过,如果打开文件模式中包含 w(写入),那么向文件中写入内容时,会先清空原文件中的内容,然后再写入新的内容。因此运行上面程序,再次打开 a.txt 文件,只会看到新写入的内容:
写入一行新数据
而如果打开文件模式中包含 a(追加),则不会清空原有内容,而是将新写入的内容会添加到原内容后边。例如,还原 a.txt 文件中的内容,并修改上面代码为:
- f = open("a.txt", 'a')
- f.write("\n