Python进阶之路 写入文件

写入文件

Python允许你将内容写入文件,方式与print()函数将字符串"写"到屏幕上类似。但是,如果打开文件时用读模式,就不能写入文件。你需要以"写入纯文本模式"或"添加纯文本模式"打开该文件,或简称为"写模式"或"添加模式"。

写模式将覆盖原有的文件,从头开始,就像你用一个新值覆写一个变量的值。将’w’作为第二个参数传递给open(),以写模式打开该文件。不同的是,添加模式将在已有文件的末尾添加文本。你可以认为这类似向一个变量中的列表添加内容,而不是完全覆写该变量。将’a’作为第二个参数传递给open(),以添加模式打开该文件。

如果传递给open()的文件名不存在,写模式和添加模式都会创建一个新的空文件。在读取或写入文件后,调用close()方法,然后才能再次打开该文件。

baconfile = open('data.txt','w') # 写模式打开文件
print(baconfile.write('Hello world!\n'))
baconfile.close()
baconfile = open('data.txt','a')	# 添加模式打开文件
print(baconfile.write('Bacon is not a vegetable.'))
baconfile.close()
baconfile = open('data.txt')
content = baconfile.read()	# 读模式打开文件,并把内容保存在content变量中
baconfile.close()
print(content)

输出结果:

13
25
Hello world!
Bacon is not a vegetable.

首先,我们一写模式打开data.txt。因为还没有data.txt,Python就创建了一个。在打开的文件上调用write(),并向write()传入字符串参数’Hello world!\n’,将字符串写入文件,并返回写入的字符个数,包括换行符。然后关闭文件。

为了将文本添加到文件已有的内容,而不是取代我们刚刚写入的字符串,我们就以添加模式打开该文件。向文件写入Bacon is not a vegetable.,并关闭它。最后,为了将文件的内容打印到屏幕上,我们一默认的读模式打开该文件,调用read(),将得到的内容保存在content中,关闭文件,并打印content。

请注意,write()方法不会像print()函数哪样,在字符串的末尾自动添加换行字符。必须自己添加换行字符。

你可能感兴趣的:(Python,Python进阶之路)