文件读写过程

python中,读写文件有3个步骤:

1.调用open()函数,返回一个File对象;

2.调用File对象的read()或write()方法或其他方法;write()

3.调用File对象的close()方法,关闭该文件。

open()函数打开文件

open(path)传入要打开的文件的字符串路径,绝对路径和相对路径都可以,

返回一个File对象。

>>>helloFile = open('C:甥敳獲your_home_folderhello.txt')

上述代码以只读模式打开文件,open函数传入参数'r',效果与以上等价

>>>helloFile = open('C:甥敳獲your_home_folderhello.txt','r')

读取文件内容

File对象的方法read(),将整个文件的内容读取为一个字符串值并返回。

File对象的方法readlines(),从文件中读取数据,保存成字符串列表。列表的

每个字符串就是文本中的每一行,并包括换行符。

写入文件

要写入文件,就不能以只读方式使用open()函数,传入的参数应该是:

1.'w':写模式,覆盖重写原有文件

2.'a':添加模式,在原有文件末尾添加文本

如果传递给open的文件名不存在,写模式和添加模式将新建一个空白文件。

关闭文件

在使用open之后,要调用close()方法,才能再次打开该文件。

综合示例

filed = open('E:LINVIhello.txt','w')filed.write('this is a new file!')filed.close()filed = open('E:LINVIhello.txt','a')filed.write('this is the second file!')filed.close()filed = open('E:LINVIhello.txt','r')print(filed.read())filed.close()

变量保存

用shelve模块保存变量

利用shelve模块,可将程序中的变量以二进制文件的形式保存到硬盘中。具体应用代码示例:

import shelveshelvefile = shelve.open('C:甥敳獲54498Desktopewdata')cats = ['Zo','Poka','Simon']shelvefile['cats'] = catsshelvefile.close()

这样就将变量以类似字典的形式保存在二进制文件里。在windows系统,上述二进制文件包括三个,后缀分别为.bak,.dat,.dir。在程序中仍然使用shelve.open()可以载入这些已经保存的变量,取变量的方式与字典取值相同。代码示例:

import shelveshelvefile = shelve.open('mydata')print(shelvefile['cats'])#['Zo', 'Poka', 'Simon']shelvefile.close()

shelve文件对象与字典相同,具有键和值,就是keys()和values(),这两个方法返回类似列表的值,但不是列表,可用list()实现类型转换。

对于大多数应用,利用 shelve 模块来保存数据,是将变量保存到文件的最佳方式。