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模块,下面对此模块进行梳理。

一、当前路径及路径下的文件

  1. os.name //判断现在正在使用的平台,输出字符串指示正在使用的平台,如果是window则用’nt’表示,对于linux和unix用户,它是‘posix’。
  2. os.getcwd() //函数得到当前目录,即当前脚本工作的目录路径
  3. sys.path[0] //获取当前工作目录
  4. sys.argv[0] //获取当前脚本目录
  5. os.listdir(path)//列举目录下的所有文件和目录名,返回的是个列表类型

二、文件删除、增加、重命名等

  1. os.makedirs(‘a/b/c/d’) //在当前目录创建a里面b,依次类推
  2. os.removedirs(‘a/b/c/d’) //若目录为空,则删除,并递推到上一级目录,如若也为空,则删除,依次类推
  3. os.mkdir(‘文件夹名字’) //生成单级目录,相当于设立中mkdir文件夹名字
  4. os.rmdir(‘文件夹名字’) //删除单级空目录,若目录不为空则无法删除
  5. os.remove(‘文件名’) //删除一个文件
  6. os.rename(‘旧名字’,’新名字’)//重命名文件/目录
  7. os.stst(r’C:/Users/00260573/Downloads/web/his.txt’) //获取文件目录信息(不准确)

三、os下的路径相关方法

  1. os.path.exists(path) //如果path存在,返回True;如果不存在,返回False
  2. os.path.isfile(path) //如果path是一个存在的文件,返回True,如果不存在,返回False
  3. os.path.isdir(path) //如果path是一个存在的目录,返回True,如果不存在,返回False
  4. os.chdir(path) //切换当前工作目录到指定的路径path,允许访问返回True,否则返回False
  5. os.path.split(path) //将path分割成目录和文件名二元祖返回
  6. os.path.dirname(path) //返回path的目录
  7. os.path.basename(path) //返回path最后的文件名。如何path以/或\结尾,那么就会返回空值。即os.path.split(path)的第二个元素
  8. os.path.join(path) //将多个路径组合后返回,第一个绝对路径之前的参数将被忽略
  9. os.path.getatime(path) //返回path所指向的文件或者目录的最后访问时间,从新纪元到访问时的秒数
  10. os.path.getmtime(path) //返回path所指向的文件或者目录的最后修改时间
  11. os.path.getctime(path) //返回path所指向的文件或者目录的创建时间
  12. os.path.getsize(path) //返回path的大小,以字节为单位,1KB=1024字节

四、python获取当前系统类型

  1. sys.platform //返回当前系统的平台标识

window--‘win32’

linux--“linux”

Mac OS X--“darwin”

Windows/Cygwin--“cygwin”

  1. platform.system() //返回当前操作系统的名字,例如linux,window,Java
  2. platform.platform()     #获取操作系统名称及版本号
  3. platform.version()        #获取操作系统版本号
  4. platform.architecture()    #获取操作系统的位数
  5. platform.machine()     #计算机类型
  6. platform.node()          #计算机的网络名称'
  7. platform.processor()    #计算机处理器信息'
  8. platform.uname()        #包含上面所有的信息汇总
 
 

python之文件操作模块(os和shutil)的更多相关文章

  1. Python之文件操作:os模块

    Python os 模块提供了一个统一的操作系统接口函数 一.对于系统的操作 1.os.name 当前使用平台 其中 ‘nt’ 是 windows,’posix’ 是linux 或者 unix 2.o ...

  2. Python3入门系列之-----内置的文件操作模块OS

    前言 在自动化测试中,经常需要查找操作文件,比如说查找配置文件(从而读取配置文件的信息),查找测试报告(从而发送测试报告邮件),经常要对大量文件和大量路径进行操作,这个时候就需要用到os模块. 使用前 ...

  3. Python 常见文件操作的函数示例(转)

    转自:http://www.cnblogs.com/txw1958/archive/2012/03/08/2385540.html # -*-coding:utf8 -*- ''''' Python常 ...

  4. Python常见文件操作的函数示例

    # -*-coding:utf8 -*- ''''' Python常见文件操作示例 os.path 模块中的路径名访问函数 分隔 basename() 去掉目录路径, 返回文件名 dirname() ...

  5. 孤荷凌寒自学python第三十五天python的文件操作之针对文件操作的os模块的相关内容

     孤荷凌寒自学python第三十五天python的文件操作之针对文件操作的os模块的相关内容 (完整学习过程屏幕记录视频地址在文末,手写笔记在文末) 一.打开文件后,要务必记得关闭,所以一般的写法应当 ...

  6. Python:目录和文件的操作模块os.path和OS常用方法

    1.目录和文件的操作模块os.path,在使用之前要先导入:import os.path.它主要有以下几个重要的功能函数: #!/user/bin/python #coding= utf-8 impo ...

  7. Python的路径操作(os模块与pathlib模块)

    Python的路径操作(os模块与pathlib模块) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.os.path模块(Python 3.4版本之前推荐使用该模块) #!/u ...

  8. python对文件操作

    python中对文件.文件夹(文件操作函数)的操作需要涉及到os模块和shutil模块. 得到当前工作目录,即当前Python脚本工作的目录路径: os.getcwd() 返回指定目录下的所有文件和目 ...

  9. Python 中文件操作

    上代码: import os import os.path rootdir = "d:/code/su/data" # 指明被遍历的文件夹 for parent,dirnames, ...

随机推荐

  1. 基于layui,Jquery 表格动态编辑 设置 编辑值为 int 或者 double 类型及默认值

    首先先推荐大家在看这篇笔记时,阅读过我写的这篇 Layui表格编辑[不依赖Layui的动态table加载] 阅读过上面那篇笔记之后呢,才能更好的理解我现在所要说的这个东西 接下来废话不多说,上代码. ...

  2. Certified Scrum Master CSM 中文资料大全

    课程概览 本课程由中国唯一一位获CST认证培训师及LeSS-Friendly Scrum Trainer双重认证讲师,丰富一线实战经验的Scrum教练讲授:姜信宝 BoB Jiang. 敏捷变革中心是 ...

  3. 微服务通信方式——gRPC

    微服务设计的原则是单一职责.轻量级通信.服务粒度适当,而说到服务通信,我们熟知的有MQ通信,还有REST.Dubbo和Thrift等,这次我来说说gRPC, 谷歌开发的一种数据交换格式,说不定哪天就需 ...

  4. 用scanf、printf输入输出string型字符串

    c语言里是没有string型的,string在c++里面.有的时候在c++里要用scanf.printf输入输出string型字符串,这是可以实现的,不过要做一点处理. 具体操作看代码: #inclu ...

  5. PHP pcntl

    来源:https://www.jianshu.com/p/de0b74f58f50 pcntl是一个可以利用操作系统的fork系统调用在PHP中实现多线程的进程控制扩展,当使用fork系统调用后执行的 ...

  6. 2019-2020-1 20199328《Linux内核原理与分析》第七周作业

    分析Linux内核创建一个新进程的过程 2019/10/28 18:34:58 笔记部分 首先是查看进程描述符(用来描述进程,其代码比较庞大)的一些内容 系统调用回顾 fork.vfork.clone ...

  7. 2019-2020-1 20199328《Linux内核原理与分析》第六周作业

    使用gdb跟踪分析一个系统调用内核函数 首先我们删除本身的menu目录,并从github上克隆一个menu,并进行编译 编译过程 现在找到test.c文件,加入上个实验中做的getPid()方法 利用 ...

  8. Libra教程之:Libra testnet使用指南

    文章目录 Libra testnet网络 下载和安装Libra 编译Libra client并连接到Testnet网络 创建两个A和B的两个账号 检查libra cli Client是否运行 创建A的 ...

  9. 【三剑客】awk命令

    前言 awk是一种很棒的语言,它适合文本处理和报表生成. 模式扫描和处理.处理文本流. awk不仅仅是Linux系统中的一个命令,而是一种编程语言,可以用来处理数据和生成报告. 处理的数据: 可以是一 ...

  10. CF思维联系–CodeForces - 223 C Partial Sums(组合数学的先线性递推)

    ACM思维题训练集合 You've got an array a, consisting of n integers. The array elements are indexed from 1 to ...