Python的os,shutil和sys模块

*********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版本

 

转载于:https://www.cnblogs.com/Downtime/p/8544891.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值