打开文件之前,需要知道你要对文件做些什么:
如果你要使用这个文件作为输入(只查看文件中有什么,而不做任何改变),就是要打开文件完成读;
如果要创建一个全新的文件或者用某个全新的文件替换现有的文件,就是要打开文件完成写;
如果要为一个现有文件增加内容,就是要打开文件完成追加。(记得在第 12 章我们曾经说过追加就表示做出补充吧。)
打开一个文件时,要在 Python 中建立一个文件对象。(看到了吧,我说过 Python 中的很多东西都是对象。)建立文件对象要使用 open
函数,并提供文件名,就像这样:
my_file = open('my_filename.txt','r')
文件名是一个字符串(string),所以两边需要加引号。'r'
部分表示我们要打开这个文件来完成读。下一节还会学习更多相关内容。
一定要了解文件对象和文件名之间的区别,这很重要。我们在程序中要用文件对象来访问文件,而文件名是 Windows(以及 Linux 和 Mac OS X)对磁盘上的文件的称呼(即文件的名字)。
人也一样。我们在不同场合会使用不同的名字。如果你的老师名叫 Fred Weasley,你会叫他 Weasley 老师。他的朋友可能叫他 Fred,而他的计算机用户名可能是 fweasley。对于文件,会有一个由操作系统使用的名字,操作系统要用这个名字把文件存储在磁盘上(文件名),另外还有一个由程序使用的名字,程序处理文件时要使用这个名字(文件对象)。
这两个名字(也就是对象名和文件名)不一定要完全相同。可以把对象命名为你想使用的任何名字。例如,如果有一个包含一些说明的文本文件,名为 notes.txt,可以这样做:
也可以这样做:
一旦打开文件并创建文件对象,就不再需要文件名了。我们在程序中将使用文件对象来完成所有工作。