python之文件操作模块(os和shutil)
1、os.name #操作系统类型 如果是posix,说明系统是liunx、Unix或Mac OS X,如果是nt,就是windows
2、os.enviro #操作系统中定义的环境变量
3、os.envrio.get("Path") #获取某个环境变量的值
4、os.path.abspath(".") #查看当前目录的绝对路径
5、os.path.join("D:\\app","test") #在某个目录下创建一个新目录(D:\\app下创建test目录)
6、os.mkdir("D:\\app\\test") #在D:\\app下面创建一个test目录
7、os.rmdir("D:\\app\\test") #删除test空文件夹
9、shutil.rmtree(path) #递归删除非空文件
10、os.remove("test.py") #删除文件
11、os.path.split("D:\\app\1.txt") #'D:\\app', '1.txt' #把一个路径分成两部分,后一部分是最后级别的目录或文件名
12、os.path.splitext("('D:\\app\\1.txt')") #'D:\\app\\1', '.txt' #得到文件扩展名
13、os.rename("old_name","new_name") #对一个文件重命名
14、os.listdir("path") #列出路径下的所有子文件类型
15、os.path.isdir("path") #判断该路径是否是一个目录
举例
1、[x for x in os.listdir(".") if os.path.isdir(x)]
#列出当前目录下的所有目录2、[x for x in os.listdir('.') if os.path.isfile(x) and os.path.splitext(x)[1]=='.py']
#列出当前目录下的.py文件
最近在做web自动化测试,经常需要查找文件以及导入和导出文件,这就需要依赖于os模块,下面对此模块进行梳理。
一、当前路径及路径下的文件
- os.name //判断现在正在使用的平台,输出字符串指示正在使用的平台,如果是window则用’nt’表示,对于linux和unix用户,它是‘posix’。
- os.getcwd() //函数得到当前目录,即当前脚本工作的目录路径
- sys.path[0] //获取当前工作目录
- sys.argv[0] //获取当前脚本目录
- os.listdir(path)//列举目录下的所有文件和目录名,返回的是个列表类型
二、文件删除、增加、重命名等
- os.makedirs(‘a/b/c/d’) //在当前目录创建a里面b,依次类推
- os.removedirs(‘a/b/c/d’) //若目录为空,则删除,并递推到上一级目录,如若也为空,则删除,依次类推
- os.mkdir(‘文件夹名字’) //生成单级目录,相当于设立中mkdir文件夹名字
- os.rmdir(‘文件夹名字’) //删除单级空目录,若目录不为空则无法删除
- os.remove(‘文件名’) //删除一个文件
- os.rename(‘旧名字’,’新名字’)//重命名文件/目录
- os.stst(r’C:/Users/00260573/Downloads/web/his.txt’) //获取文件目录信息(不准确)
三、os下的路径相关方法
- os.path.exists(path) //如果path存在,返回True;如果不存在,返回False
- os.path.isfile(path) //如果path是一个存在的文件,返回True,如果不存在,返回False
- os.path.isdir(path) //如果path是一个存在的目录,返回True,如果不存在,返回False
- os.chdir(path) //切换当前工作目录到指定的路径path,允许访问返回True,否则返回False
- os.path.split(path) //将path分割成目录和文件名二元祖返回
- os.path.dirname(path) //返回path的目录
- os.path.basename(path) //返回path最后的文件名。如何path以/或\结尾,那么就会返回空值。即os.path.split(path)的第二个元素
- os.path.join(path) //将多个路径组合后返回,第一个绝对路径之前的参数将被忽略
- os.path.getatime(path) //返回path所指向的文件或者目录的最后访问时间,从新纪元到访问时的秒数
- os.path.getmtime(path) //返回path所指向的文件或者目录的最后修改时间
- os.path.getctime(path) //返回path所指向的文件或者目录的创建时间
- os.path.getsize(path) //返回path的大小,以字节为单位,1KB=1024字节
四、python获取当前系统类型
- sys.platform //返回当前系统的平台标识
window--‘win32’
linux--“linux”
Mac OS X--“darwin”
Windows/Cygwin--“cygwin”
- platform.system() //返回当前操作系统的名字,例如linux,window,Java
- platform.platform() #获取操作系统名称及版本号
- platform.version() #获取操作系统版本号
- platform.architecture() #获取操作系统的位数
- platform.machine() #计算机类型
- platform.node() #计算机的网络名称'
- platform.processor() #计算机处理器信息'
- platform.uname() #包含上面所有的信息汇总