文件
1.文件的打开【open函数】
eg:f = open('E:/Python/text.txt','w+')
<1>open函数作用是打开一个文件,参数有多个,常用的就这两个,第一个参数是要打开的文件的路径,第二个是打开的模式,参数2决定了文件的读写权限以及读写方式(是二进制还是文本),关于参数二,下面这个表说的很清楚了,主要是r,w,u,a,这四个后面可以追加+,b。值得注意的是,r模式下,文件不存在会报错,a和w模式不存在会自动创建文件,w模式下,每次输入的内容都会覆盖掉前一次的内容
<2>open函数打开文件后,如果不关闭文件或者及时调用flush函数,写入的内容就会始终在缓存区里面,不会写到文件中,所以每次都要及时关闭文件。而为了更好的掌控文件的关闭,通常会使用with关键字:with open(path,mode) as f:【冒号别掉】
2.文件的方法【dir(io.IOBase) 或者help(io.IOBase)查看方法,2+版本是file对象】,具体怎么用自己查:
3.文本过滤示例代码:
4.os模块和os.path模块【与文件路径相关】
5.pickle模块【序列化】
<1>作用:保存格式的存储,常规的文件存储都是会保存为文本格式,会丢失存储数据本身的类型,比如字典存储成文本,但是读出来的不是字典,这样就丢失了数据本身类型,pickle模块将文件存储为二进制文件【因此open函数的mode参数必须有 b (binary)】
<2>使用【使用pickle模块序列化得到的二进制文件一般以‘.pkl’作为后缀名】
序列化【dump(obj,file)】:将需要序列化的对象obj,序列化到file文件当中(这里的file文件在打开的时候必须是wb或者ab,因为生成的文件是二进制文件)
反序列化【load(file)】:将指定的序列化文件加载,返回一个文件对象
举例:
ps:三种导模块的语句:
1. import easygui:在用到easygui里面的方法的时候,要easygui.method()2. from easygui import * :使用easygui里面的方法的时候直接用方法名:method()
3. import easygui as DIYname :在模块的名字比较长的时候,建议这样用
关于文件这一块,这个博客写的可能更专业
http://www.cnblogs.com/dkblog/archive/2011/02/24/1980651.html