打开/关闭文件
python中打开文件使用open函数,一般使用中,该函数接收文件路径和打开方式作为参数,调用形式如下:
f = open('data.txt', 'r')
其中data.txt是文件相对路径,如果当前目录下有一个名为data.txt的文件,那么该调用方式就会打开这个文件。r是打开方式,这里表示以读模式打开文件,还有一些其它可用参数,如下表所示:
参数取值 | 含义 |
---|---|
r | 以读模式打开文件,一般只对文件进行读操作时使用该参数 |
rb | 以二进制读方式打开文件,一般用于读二进制文件 |
w | 以写模式打开文件,一般只对文件进行写操作时使用该参数。如果文件不存在,则创建文件,如果文件存在,那么新写入的内容将覆盖文件原有内容。 |
wb | 以二进制写方式打开文件,一般用于写二进制文件。如果文件不存在,则创建文件,如果文件存在,那么新写入的内容将覆盖文件原有内容。 |
a | 以追加写方式打开文件,使用该参数时,新写入的内容将添加在文件结尾。 |
等号左边的f是文件句柄,后续操作时可以用使用f代表文件。关闭文件非常简单,操作如下:
f.close()
读文件
以如下代码为例进行说明:
f = open('data.txt', 'r')
for line in f.readlines():
print(line)
f.readlines()读取文件所有内容,返回一个列表,列表中各元素是文件的每一行内容,假如文件内容如下:
I like python.
it is easy to learn.
and it can do many things easier than other progarm language.
f.readlines()将返回如下内容:
如果想直接读取并展示文件的所有内容,可以使用f.read(), 该方式可以直接返回文件所有内容,对于前述文件内容,调用f.read(),将返回如下内容:
写文件
写入文件内容可以调用f.write(),实例如下:
f = open('dataw.txt', 'w')
f.write('I like python.')
f.close()
上述代码会把’I like python.'这个字串写入文件。
f.write()可以把一个字串写入文件,如果想同时写入多个字串,可以使用f.writelines(), 该方法接收一个字串列表作为参数,示例如下:
f = open('dataw.txt', 'w')
strs = ['I like python.\n', 'it is easy to learn.\n', 'it can do many things easier than other program languages.\n']
f.writelines(strs)
f.close()
上述代码会在文件中写入三行内容,每一行是列表中的一个元素。