继续学习网址http://www.cnblogs.com/vamei/archive/2012/09/14/2684775.html
1.os包
os包包括各种各样的函数,以实现操作系统的许多功能。这个包非常庞杂。os包的一些命令就是用于文件管理。我们这里列出最常用的:
mkdir(path)
创建新目录,path为一个字符串,表示新目录的路径。相当于$mkdir命令
rmdir(path)
删除空的目录,path为一个字符串,表示想要删除的目录的路径。相当于$rmdir命令
listdir(path)
返回目录中所有文件。相当于$ls命令。
remove(path)
删除path指向的文件。
rename(src, dst)
重命名文件,src和dst为两个路径,分别表示重命名之前和之后的路径。
chmod(path, mode)
改变path指向的文件的权限。相当于$chmod命令。
chown(path, uid, gid)
改变path所指向文件的拥有者和拥有组。相当于$chown命令。
stat(path)
查看path所指向文件的附加信息,相当于$ls -l命令。
symlink(src, dst)
为文件dst创建软链接,src为软链接文件的路径。相当于$ln -s命令。
getcwd()
查询当前工作路径 (cwd, current working directory),相当于$pwd命令。
import os
os.mkdir('/home/hadoop/test')
2.shutil包
copy(src, dst)
复制文件,从src到dst。相当于$cp命令。
move(src, dst)
移动文件,从src到dst。相当于$mv命令。
import shutil
shutil.copy('src.txt','desc.txt')
os包: rmdir, mkdir, listdir, remove, rename, chmod, chown, stat, symlink
shutil包: copy, move
3.序列化与反序列化 a.pickle包
1) 将内存中的对象转换成为文本流:
>>> class Bird(object):
... have_feather = True
... way_of_reproduction = 'egg'
...
>>> summer = Bird()
>>> picklestring = pickle.dumps(summer)
>>> print picklestring
ccopy_reg
_reconstructor
p0
(c__main__
Bird
p1
c__builtin__
object
p2
Ntp3
Rp4
.
写入文件
with open(fn, 'w') as f:
... picklestring = pickle.dump(summer,f)
使用pickle.dumps()方法可以将对象summer转换成了字符串 picklestring(也就是文本流)。随后我们可以用普通文本的存储方法来将该字符串储存在文件(
文本文件的输入输出
)。
2) 重建对象
首先,我们要从文本中读出文本,存储到字符串 (文本文件的输入输出)。然后使用pickle.loads(str)的方法,将字符串转换成为对象。要记得,此时我们的程序中必须已经有了该对象的类定义。
>>> with open(fn, 'r') as f:
... summer = pickle.load(f)
...
>>> print summer
<__main__.Bird object at 0x1df41d0>
b. cPickle包的功能和用法与pickle包几乎完全相同 (其存在差别的地方实际上很少用到),不同在于cPickle是基于c语言编写的,速度是pickle包的 1000倍 。对于上面的例子,如果想使用cPickle包,我们都可以将import语句改为:
import cPikle as pickle