>>> import tab
>>> import os
>>> os.symlink("a.txt", "aa.txt") //创建a.txt的链接文件aa.txt
>>> os.listdir(os.curdir)      //查看当前目录
>>> os.listdir(os.pardir)      //查看父目录(上级目录)
>>> os.listdir(".")         //查看当前目录
>>> os.listdir("..")         //查看父目录(上级目录)
>>> os.listdir("/root")       //查看/root目录,不递归
>>> os.getcwd()           //获取当前的工作目录
>>> os.mkdir("/root/iloveyou")    //创建/root/iloveyou目录
>>> os.chmod("aa", 0755)      //修改文件的权限
>>> os.path.getatime("aa")      //得到文件的最近访问时间
1470184322.416332           //从1970.01.01零点开始到现在的秒数
>>> import time           //导入time模块
>>> time.ctime(1470184322.416332)   //将秒数转化为时间
'Wed Aug  3 08:32:02 2016'
>>> time.ctime()            //得到系统当前的时间
'Wed Aug  3 09:42:46 
2016'
>>> os.chdir("/home")         //切换到/home目录下
>>> os.getcwd()            //查看到当前目录
'/home'
>>> os.rmdir("/home/zhang")      //删除非空目录
>>> os.removedirs("/home/iloveyou")  //同样只能删除非空目录
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/lib64/python2.6/os.py", line 170, in removedirs
    rmdir(name)
OSError: [Errno 39] Directory not empty: '/home/iloveyou'
>>> os.remove("aa")           //删除一个文件
>>> os.mknod("iloveyou.txt")      //创建一个文件
>>> os.walk("/zhang/")          //产生一个生成器对象
<generator object walk at 0x7f62a42be730>
>>> list(os.walk("/zhang/"))
[('/zhang/', ['wang'], ['1.txt', '2.txt']), ('/zhang/wang', [], ['b.txt', 'a.txt'])]
                 //可以结合list来递归遍历目录,第一个元组中第一项是该
                  目录名第二项是子目录,第三项是目录中的文件,第二个元组
                  中第一项是子目录,第二项是子目录中的子目录,第三项是子
                  目录中的文件
>>> os.path.basename("/zhang/jsdlfsd")    //取出路径后边的文件名
'jsdlfsd'
>>> os.path.basename("/home/zhangdl/")    //如果最后一项也是目录,取出的则为空
''
>>> os.path.dirname("/zhang/jsdlfsd")      //取出路径的目录名,后边的文件名不一定存在
'/zhang'
>>> os.path.dirname("/home/zhangdl/")      //查看目录,路径最后一项是目录
'/home/zhangdl'
>>> os.path.split("/zhang/jsdlfsd")       //将目录和文件分开放到元组里边
('/zhang', 'jsdlfsd')
>>> os.path.split("/home/zhangdl/")       //如果所给路径都是目录,文件项则返回空
('/home/zhangdl', '')
>>> os.path.join('/home/zhangdl', '')     //如果希望将路径加起来则使用join函数
'/home/zhangdl/
>>> os.path.isfile("/home/zhangdl")      //判断是否是文件,需要存在且是文件才为真
False                       链接文件也是文件
>>> os.path.isfile("/home/sdfsdfsd")
False
>>> os.path.isdir("/home")           //判断是否是目录,存在且目录为真
True
>>> os.path.islink("/root/python/a.txt")    //判断是否是链接文件
False
>>> os.path.ismount("/boot")          //判断是否是挂载点
True
>>> os.path.ismount("/root")
False

cpickle模块

把各种各样的数据对象直接写入到文件里,写的文件是什么类型,读出来就还是什么类型。但是如果使用write直接写进去的话不论是什么类型写进去就都是字符串,再往回转就比较困难了。

>>> import tab
>>> import cPickle as p
>>> shoplist = ["apple","egg","banana"]
>>> f = open("m.data", "w")
>>> p.dump(shoplist, f)              //将列表使用dump方法输入到文件中
>>> f.close()
>>> f = open("m.data")
>>> newlist = p.load(f)             //再次打开读取的时候仍然是列表
>>> newlist
['apple', 'egg', 'banana']
>>> type(newlist)
<type 'list'>
>>> newlist[0]
'apple'