今天我们来介绍一下os模块中常用的一些方法,当然python中的os模块中提供的使用方法有很多,但是这里面小编会列举出来一些和实际工作中应用的相关的方法,而且会有一些实际的例子方便大家对os模块理解。比如os结合join、os结合dirname等等,那我们接下来看看关于os模块的使用吧。

我们可以通过 Python入门os基础来看一些os模块的使用(我们使用的是python3的环境)

1.os.getcwd()    返回当前目录

import  os
print (os.getcwd())

输出结果:

E:\Project_case

2.os.listdir()  返回当前文件夹下面的文件名,通过列表的形式存储

import  os
print (os.listdir('unittest_demo'))

查看结果:

['all_test.py', 'test_case', 'test_report']

3.os.path.dirname(os.path.realpath(__file__))   获取当前文件所在的绝对路径

curpath = os.path.dirname(os.path.realpath(__file__))
print (curpath)

返回结果:

E:\Project_case

4.os.path.join(a,b)  将b路径追加到a后面

casepath = os.path.join(curpath, "case")
reportpath = os.path.join(curpath, "report")
print (curpath)
print (casepath)
print (reportpath)

查看返回的结果:

E:\Project_case
E:\Project_case\case

可以在获取到的路经上面追加新的路径。这是一种简化的写法。

5.更多用法,参考如下

使用前 import os导入模块
os模块:
os.sep 可以取代操作系统特定的路径分割符 os.linesep 字符串给出当前平台使用的行终止符。例如,Windows使用'\r\n',Linux使用'\n' 而Mac使用'\r'。 os.name 字符串指示你正在使用的平台。比如对于Windows,它是'nt',而对于Linux/Unix用户,它是'posix' os.getcwd() 函数得到当前工作目录, os.getenv()和os.putenv() 函数分别用来读取和设置环境变量。 os.listdir(dirname): 列出dirname下的目录和文件 os.remove() 函数用来删除一个文件。 os.curdir: 返回但前目录('.') os.chdir(dirname): 改变工作目录到dirname getatime(path):文件或文件夹的最后访问时间,从新纪元到访问时的秒数 getmtime(path):文件或文件夹的最后修改时间 getctime(path):文件或文件夹的创建时间

os.path模块:

os.path.isfile()和os.path.isdir()函数分别检验给出的路径是一个文件还是目录,返回bool值

os.path.exists()函数用来检验给出的路径是否真地存在 返回bool

os.path.getsize(name):获得文件大小,如果name是目录返回0L 返回long 单位是字节

os.path.abspath(name):获得绝对路径

os.path.normpath(path):规范path字符串形式, 结果一般情况下把/变为//,

os.path.split(name):将name分割成路径名和文件名,结果为(路径名,文件名.文件扩展名)(事实上,如果你完全使用目录,它也会将最后一个目录作为文件名而分离,同时它不会判断文件或目录是否存在)

os.path.splitext(filename):分离文件名与扩展名 结果为(filename,扩展名) 如果参数为一个路径 则返回(路径,'')

os.path.join(path,name): 连接目录与文件名或目录 结果为path/name

os.path.basename(path):返回文件名 实际为把path的最后一个"/"分割,返回后者。不管参数是一个路径还是文件 与os.path.split(name)相同 不同之处后者返回两个值得元组

 os.path.dirname(path): 返回文件路径 实际为把path的最后一个"/"分割,返回前者。不管参数是一个路径还是文件

os.system()函数用来运行shell命令

os模块包装了不同操作系统的通用接口,使用户在不同操作系统下,可以使用相同的函数接口,返回相同结构的结果。

os.name:返回当前操作系统名称('posix', 'nt', 'os2', 'mac', 'ce' or 'riscos')

os中定义了一组文件、路径在不同操作系统中的表现形式参数,如

os.sep(文件夹分隔符,windows中是 \ )

os.extsep(扩展名分隔符,windows中是 . )

os.pathsep(目录分隔符,windows中是 ; )

os.linesep(换行分隔符,windows中是 \r\n )

os中有大量文件、路径操作的相关函数,如:

listdir(path):列举目录下的所有文件

makedir(path):创建文件夹,注:创建已存在的文件夹将异常

makedirs(path):递归式的创建文件夹,注:创建已存在的文件夹将异常

remove(filename):删除一个文件

rmdir(path):删除一个文件夹,注:删除非空的文件夹将异常

removedirs(path):递归的删除文件夹,直到有一级的文件夹非空,注:文件夹路径不能以'\'结束

rename(src,dst):给文件或文件夹改名(可以改路径,但是不能覆盖目标文件)

renames(src,dst):递归式的给文件或文件名改名

walk(path):列举path下的所有文件、文件夹

os中与进程相关的操作,如:

execl(path):运行一个程序来替代当前进程,会阻塞式运行

_exit(n):退出程序

startfile(filename):用与文件关联的程序运行,关联程序打开后,立即返回

system(cmd):运行一个程序或命令,会立即返回,并在cmd执行完成后,会返回cmd退出代码

os.path:在不同的操作系统中调用不同的模块,是一个可import的模块,这个模块中提供很多有用的操作:

abspath(path):返回path的绝对路径,若path已经是绝对路径了,则保持。

basename(path):返回path中的文件名。

commonprefix(list):返回list中的统一前缀,用于获得一组字符串的左起相同的内容

dirname(path):返回path中的文件夹部分,结果不包含'\'

exists(path):文件或文件夹是否存在

getatime(path):文件或文件夹的最后访问时间,从新纪元到访问时的秒数

getmtime(path):文件或文件夹的最后修改时间

getctime(path):文件或文件夹的创建时间

getsize(path):文件或文件夹的大小,若是文件夹返回0

isabs(path):返回是否是绝对路径

isfile(path):返回是否是文件路径

isdir(path):返回是否是文件夹路径

islink(path):返回是否是快捷方式

join(path1,path2,...):将path进行组合,若其中有绝对路径,则之前的path将被删除

normcase(path):转换路径中的间隔符

normpath(path):转换路径为系统可识别的路径

realpath(path):转换路径为绝对路径

split(path):将路径分解为(文件夹,文件名)

splitext(path):将路径分解为(其余部分,.扩展名),若文件名中没有扩展名,扩展名部分为空字符串

在操作与系统不支持的对象时,抛出OSError异常。
判断文件夹是否存在
>>> import os
>>> os.path.exists('d:/assist')
True
>>> os.path.exists('d:/assist/getTeacherList.py')
True
>>> os.path.isfile('d:/assist')
False
>>> os.path.isfile('d:/assist/getTeacherList.py')
True
>>> os.makedirs('d:/assist/set')
>>> os.path.exists('d:/assist/set')
True
判断文件夹是否为空
使用os.listdir命令
>>>workpath='目录'
>>>if not os.list(workpath):
>>>print '目录为空'
遍历文件夹
>>> def Test2(rootDir):
... for lists in os.listdir(rootDir):
... path = os.path.join(rootDir, lists)
... print path
... if os.path.isdir(path):
... Test2(path)
...
>>> Test2("F:\zr")

Python基础入门-os模块的更多相关文章

  1. python基础之os模块操作

    # os模块 目录相关内置库import os# . 当前目录 .. 返回上一级目录# 1. os.path.abspath() --获取当前文件的绝对路径(不包含os模块.py) pwd# path ...

  2. Python基础(os模块)

    os模块用于操作系统级别的操作: os.getcwd() 获取当前工作目录,即当前python脚本工作的目录路径 os.chdir("dirname") 改变当前脚本工作目录:相当 ...

  3. Python基础入门(模块和包)

    1 模块 1.1 什么是模块 在 Python 中,一个 .py 文件就称之为一个模块(Module). 我们学习过函数,知道函数是实现一项或多项功能的一段程序 .其实模块就是函数功能的扩展.为什么这 ...

  4. [Python基础]009.os模块(1)

    os模块(1) 介绍 os 常量 文件目录操作 文件属性操作 遍历文件夹 介绍 os模块是系统服务应用程序接口,是Python最常用的模块之一. os模块包含了对文件和文件夹的操作,操作系统相关的操作 ...

  5. python 基础(八) os模块

    OS模块 概念:包含了普遍的操作 系统的功能 一.函数 函数名 函数说明 os.name 获取操作系统类型 nt->Windows posix->Linux/Unix os.listdir ...

  6. [Python基础]010.os模块(2)

    os模块(2) 介绍 os 常量 路径 判断路径属性 路径变换 文件属性 相同文件 介绍 - os.path模块,主要处理路径操作,包含了各种处理文件和文件名的方法. os.path 常量 os.pa ...

  7. Python内置OS模块用法详解

    大家好,从今天起早起Python将持续更新由小甜同学从初学者的角度学习Python的笔记,其特点就是全文大多由新手易理解的代码与注释及动态演示.刚入门的读者千万不要错过! 很多人学习python,不知 ...

  8. Python基础入门教程

    Python基础入门教程 Python基础教程 Python 简介 Python环境搭建 Python 基础语法 Python 变量类型 Python 运算符 Python 条件语句 Python 循 ...

  9. 十八. Python基础(18)常用模块

    十八. Python基础(18)常用模块 1 ● 常用模块及其用途 collections模块: 一些扩展的数据类型→Counter, deque, defaultdict, namedtuple, ...

随机推荐

  1. mysql 统计sql

    1.按照月份统计数据 SELECT DATE_FORMAT(d.create_time,'%Y-%m') months,COUNT(id) AS scannum FROM detail d GROUP ...

  2. AppCan上下拉列表刷新

    function initBounce(funcTop, funcBottom){ uexWindow.setBounce("1"); if (!funcTop && ...

  3. 安装用于跨平台移动开发的 Visual C++

    安装用于跨平台移动开发的 Visual C++ Visual Studio 2015   若要了解有关 Visual Studio 2017 RC 的最新文档,请参阅 Visual Studio 20 ...

  4. easyui-combotree 只能选叶子未级

    easyui-combotree 只能选叶子未级 function edit_dg() { //选中一行,获取这一行的属性的值 var selected = $('#tbClientListBrows ...

  5. git学习3 - 克隆远程库到本地 将本地库上传到git

    如何克隆远程版本库到本地 git clone URL 如何用命令将本地项目上传到git 1.(先进入项目文件夹)通过命令 git init 把这个目录变成git可以管理的仓库 (注意: cd C:/U ...

  6. gevent实现套接字

    server------------- #!/usr/bin/env python # encoding: utf-8  # Date: 2018/6/17 from gevent import mo ...

  7. Window中的内存地址(小知识)

    现在的编辑器大部分工作都是内存管理托管型,所以很少直接对Window的内存地址直接管理了. Window中的内存地址主要是以16进制数字体现的,当操作系统为32位时,那么每个内存地址为2的32次方,也 ...

  8. ASP.NET页面传值加号变空格解决办法

    只需要把欲传值进行编码 string EncodeId = Server.UrlEncode(id); 加号就变成了 % 2 B  (中间无空格) 然后再传出去. Request.QueryStrin ...

  9. 执行CRUD总结

  10. Visual Studio 2005 C# 读写Excel文件

    做作业的时候查了一点儿资料, 用的vs2k5 读 excel 发现用起来非常简单...现在编程语言没话说! 项目-添加引用-COM-Microsoft Excel 12.0 Object Librar ...