贫民
www.gbwy99.com 卫浴代理
- 积分
- 41
|
很抱歉!我今天才更新,因为最近百度姨妈,公司网站持续猛掉第五页了,让我这个seoer疲惫不堪。所以,迟了六天。非常抱歉!!!
今天主要讲的是文件管理。
可参考OS案例:http://www.cnblogs.com/rollenholt/archive/2012/04/23/2466179.html
文件管理常用到os、shutil等模块
os模块是系统模块,可以执行dos。故可以调用dos对于文件夹进行操作。
shutil模块是
首先来讲一下文件的读写。
open
#注:使用了open以后一定要close关闭。打开要关闭。这是必须的。
读文件
>>> hello = open('x.txt','r')
- x.txt文件名
- r open的模式
- 关于Open的一些模式
- w 以写方式打开,文件若存在,首先要清空,然后(重新)创建,
- a 以追加模式打开 (从 EOF 开始, 必要时创建新文件)
- r+ 以读写模式打开
- w+ 以读写模式打开 (参见 w )
- a+ 以读写模式打开 (参见 a )
- rb 以二进制读模式打开
- wb 以二进制写模式打开 (参见 w )
- ab 以二进制追加模式打开 (参见 a )
- rb+ 以二进制读写模式打开 (参见 r+ )
- wb+ 以二进制读写模式打开 (参见 w+ )
- ab+ 以二进制读写模式打开 (参见 a+ )
- encdeing=gbk或者encoding=utf-8
>>> file = open('e:\\x.txt') #打开E盘下的x.txt。
>>> print file #可以发现这样是打开不了的,3.x的可以直接打印出来。2.7的不行。
<open file 'e:\\x.txt', mode 'r' at 0x022F3700>
>>> for i in file: #我们可以使用for将其输出。
... print i
...
By WHILE,hello world.
或者
>>> print(file.read())
By WHILE,hello world.
>>> file.read() #好比一本书,你打开书看到了一百页,那么下次使用ca.read()将回是空的,他以一百页会始端。
'By WHILE,hello world.'
>>> file.tell() #计算上一次的始端是多少
21L #L表示long
>>> file.close() #关闭
如果说如此文件读写的时候都会出错,一旦出错的话会,close就得不到执行,无论如何都要让其关闭,此时我们可以采用try...finally来实现。
>>> try:
... x = open('e:\\x.txt','r')
... print(f.read())
... finally:
... f.close()
...
>>>
倘若每次都那么写,那就太麻烦了,python又引入了。with帮助我们调用close()
>>> with open('e:\\x.txt','r') as f: #后面的as f是说将其重命名为f
... print(f.read())
...
By WHILE,hello world.
>>>#这个和前面的try...finally代码是一致的。且不需要调用close
写文件
>>> file = open('e:\\hello.txt','w')
>>> file.write("hello world")
>>> file.close() #记得关闭
>>> file = open('e:\\hello.txt','r') #倘若要再进行查看,那么久又要执行这个哟。
>>> file.read()
'hello world'
>>>#也可以使用with执行哟。
>>> with open('e:\\hellp.txt','w') as f:
... f.write('i am kangkang.')
...
>>>
数据持久储存技术
pickle #泡菜,数据持久储存技术,可以将数据写到另外一个文件,然后加载。利于代码以后的优化。[就好比把文件先放在某个地方,需要调用的时候就再用。]
>>>import picle
>>>x = [123,'wa','hello'] #该数列是要保存的数列
读取
>>>pickle_file = open('1.pkl'.'wb') #存为二进制文件,参数1是保存的文件,参数2是写入(wb)还是读取(rb)。pkl是后缀,可以随意定义。wb写入二进制文件,rb读取二进制文件
>>>pickle.dump(x,pickle_file) #把参数1放到参数2当中。
>>>pickle_file.close()
加载
>>>pickfile_file = open('1.pkl','rb')
>>>x2 = pirckle.load(pickle_file) #如此,一个list就这样被加载了,当然也可以是元组,是数列,甚至是字典。
>>>
|
|