*********OS***********
1 os.sep 可以取代操作系统特定的路径分隔符。windows下为 '\\' 2 os.name 字符串指示你正在使用的平台。比如对于Windows,它是'nt',而对于Linux/Unix用户,它是 'posix' 3 os.getcwd() 函数得到当前工作目录,即当前Python脚本工作的目录路径 4 os.getenv() 获取一个环境变量,如果没有返回none 5 os.putenv(key, value) 设置一个环境变量值 6 os.path.dirname(path) 返回文件路径
7 os.remove(path) 函数用来删除一个文件 8 os.system(command) 函数用来运行shell命令 9 os.linesep 字符串给出当前平台使用的行终止符。例如,Windows使用 '\r\n',Linux使用 '\n' 而Mac使用 '\r' 10 os.path.split(path) 函数返回一个路径的目录名和文件名 11 os.path.splitext() 分离文件名与扩展名
12 os.path.exists() 函数用来检验给出的路径是否真地存在 13 os.curdir 返回当前目录 ('.') 14 os.mkdir(path) 创建一个目录 15 os.makedirs(path) 递归的创建目录 16 os.chdir(dirname) 改变工作目录到dirname 17 os.path.getsize(name) 获得文件或目录大小 18 os.path.abspath(name) 获得绝对路径 19 os.path.normpath(path) 规范path字符串形式 20 os.path.isfile() 和os.path.isdir()函数分别检验给出的路径是一个文件还是目录 21 os.path.join(path,name) 连接目录与文件名或目录 22 os.path.basename(path) 返回文件名 23 os.listdir(path) 返回指定目录下的所有文件和目录名24 os.walk(top,topdown=True,οnerrοr=None) 遍历迭代目录 25 os.rename(src, dst) 重命名file或者directory src到dst 如果dst是一个存在的directory, 将抛出OSError. 在Unix, 如果dst在存且是一个file, 如果用户有权限的话,它将被安静的替换. 操作将会失败在某些Unix 中如果src和dst在不同的文件系统中. 如果成功, 这命名操作将会是一个原子操作 (这是POSIX 需要). 在 Windows上, 如果dst已经存在, 将抛出OSError,即使它是一个文件. 在unix,Windows中有效。 26 os.renames(old, new) 递归重命名文件夹或者文件。像rename()
注意:os.walk(top,topdown=True,οnerrοr=None)
其中:
- top是要遍历的目录。
- topdown是代表要从上而下遍历还是从下往上遍历。
- onerror可以用来设置当便利出现错误的处理函数(该函数接受一个OSError的实例作为参数),设置为空则不作处理。
- followlinks表示是否要跟随目录下的链接去继续遍历,要注意的是,os.walk不会记录已经遍历的目录,所以跟随链接遍历的话有可能一直循环调用下去。
os.walk返回的是一个3个元素的元组 (root, dirs, files)
,分别表示遍历的路径名,该路径下的目录列表和该路径下文件列表。注意目录列表和文件列表不是具体路径,需要具体路径(从root开始的路径)的话可以用 os.path.join(root,dir)
。
****************Shutil********************
1 shutil.copyfile( src, dst) 从源src复制到dst中去。当然前提是目标地址是具备可写权限。抛出的异常信息为IOException. 如果当前的dst已存在的话就会被覆盖掉 2 shutil.move( src, dst) 移动文件或重命名 3 shutil.copymode( src, dst) 只是会复制其权限其他的东西是不会被复制的 4 shutil.copystat( src, dst) 复制权限、最后访问时间、最后修改时间 5 shutil.copy( src, dst) 复制一个文件到一个文件或一个目录 6 shutil.copy2( src, dst) 在copy上的基础上再复制文件最后访问时间与修改时间也复制过来了,类似于cp –p的东西 7 shutil.copy2( src, dst) 如果两个位置的文件系统是一样的话相当于是rename操作,只是改名;如果是不在相同的文件系统的话就是做move操作 8 shutil.copytree( olddir, newdir, True/Flase) 9 把olddir拷贝一份newdir,如果第3个参数是True,则复制目录时将保持文件夹下的符号连接,如果第3个参数是False,则将在复制的目录下生成物理副本来替代符号连接 10 shutil.rmtree( src ) 递归删除一个目录以及目录内的所有内容 11 shutil.rmtree(path) #递归删除文件夹
***************sys************************
1 sys.argv 命令行参数List,第一个元素是程序本身路径 2 3 sys.modules.keys() 返回所有已经导入的模块列表 4 5 sys.exc_info() 获取当前正在处理的异常类,exc_type、exc_value、exc_traceback当前处理的异常详细信息 6 7 sys.exit(n) 退出程序,正常退出时exit(0) 8 9 sys.hexversion 获取Python解释程序的版本值,16进制格式如:0x020403F0 10 11 sys.version 获取Python解释程序的版本信息 12 13 sys.maxint 最大的Int值 14 15 sys.maxunicode 最大的Unicode值 16 17 sys.modules 返回系统导入的模块字段,key是模块名,value是模块 18 19 sys.path 返回模块的搜索路径,初始化时使用PYTHONPATH环境变量的值 20 21 sys.platform 返回操作系统平台名称 22 23 sys.stdout 标准输出 24 25 sys.stdin 标准输入 26 27 sys.stderr 错误输出 28 29 sys.exc_clear() 用来清除当前线程所出现的当前的或最近的错误信息 30 31 sys.exec_prefix 返回平台独立的python文件安装的位置 32 33 sys.byteorder 本地字节规则的指示器,big-endian平台的值是'big',little-endian平台的值是'little' 34 35 sys.copyright 记录python版权相关的东西 36 37 sys.api_version 解释器的C的API版本