1
Python编程从入门到实践
1.11.1.3 7.1.3 文件的读写
7.1.3 文件的读写

一个文件被打开后,有一个file对象,可以得到有关该文件的各种信息。使用相关的函数可以实现文件的读写。和file对象相关的所有属性见表7-2。

表7-2 file对象属性表

【例7.3】文件属性。

例7.3的输出结果如图7-3所示。

图7-3 输出结果

file对象提供了一系列方法,能让人们轻松地访问文件。其中,read()和write()方法分别用来读取和写入文件。

write()方法可将任何字符串写入一个打开的文件。需要重点注意的是,Python字符串可以是二进制数据,而不仅仅是文字。

语法:

file Object.write(string)

在这里,被传递的参数是要写入已打开文件的内容,如例7-4所示。

【例7.4】文件的写入。

运行程序,创建了write.txt文件,将收到的内容写入该文件,并关闭文件。如果打开这个文件,将看到如图7-4所示内容。

图7-4 运行结果

read()方法从一个打开的文件中读取一个字符串。需要重点注意的是,Python字符串可以是二进制数据,而不仅仅是文字。

语法:

file Object.read([count])

在这里,被传递的参数是要从已打开文件中读取的字节数。该方法从文件的开头开始读入,如果没有传入count,它会尝试尽可能多地读取更多的内容,很可能是直到文件的末尾。

【例7.5】文件的读取。

使用上面创建的文件write.txt。

输出结果如图7-5所示。

图7-5 输出结果

文件位置:tell()方法告诉用户文件的当前位置,换句话说,下一次的读写会发生在距离文件开头多少字节之后;seek(offset[,from])方法改变当前文件的位置;offset变量表示要移动的字节数;from变量指定开始移动字节的参考位置。如果from设为0,这意味着将文件的开头作为移动字节的参考位置;如果设为1,则使用当前的位置作为参考位置;如果设为2,那么该文件的末尾将作为参考位置。

【例7.6】文件的读取。

还用上面创建的文件write.txt。

以上实例的输出结果如图7-6所示。

图7-6 实例输出