Python os 模块提供了一个统一的操作系统接口函数
一、对于系统的操作
1、os.name 当前使用平台
其中 ‘nt’ 是 windows,’posix’ 是linux 或者 unix
2、os.sep
输出操作系统的特定的路径分隔符。Win下为“\”,Linux下为“/”
3、os.pathsep 输出分格符
输出用于分割文件路径的字符串。 Windows下是';'
4、os.linesep 换行符
输出当前平台是用的行终止符,win下为“\r\n”,Linux下为“\n”,Mac使用'\r'。
5、os.environ
获取系统环境变量path
6、os.system('dir c:\\')
直接执行系统命令
7、os.popen()
执行一个系统命令,把执行结果存到文件句柄中
dirList=os.popen('dir d:\\tmp')
for i in dirList:
print i
 
二、对于目录的操作
1、os.getcwd()
获取当前的工作目录,即当前Python脚本工作的目录路径。
结果:E:\python\0507
2、os.chdir('d:\\')
修改当前的工作目录
3、os.curdir
返回当前目录
4、os.pardir
目录切换到父目录(上一级目录)
 
三、对文件的操作
1、os.listdir('e:\\tmp')
列出指定目录下的所有文件和子目录,包括隐藏文件或目录,并以列表形式返回。
2、os.rename('e:\\tmp\\1.txt','e:\\tmp\\1new.txt')
修改文件名
3、os.stat('e:\\tmp\\02.txt')
获取文件的生命周期中的各个时间
4、os.utime(path[, (atime, mtime)]) 修改文件的时间属性
设置文件的access and modified time为给定的时间
如果未指定atime和mtime参数,修改的时间将会是当前的时间。
5、os.access()
输出文件是否有写的权限:
print os.access(fileName,os.W_OK)
print os.access(fn,os.R_OK) 文件是否有读的权限
print os.access(fn,os.X_OK) 文件是否有执行的权限
 
四、os.path
1、os.path.exists(path)
返回当前的目录或者文件是否存在
判断path是否存在,如果存在返回True,否则返回False。
2、os.path.isabs(path)
判断路径是否为绝对路径
判断path是否是绝对路径,如果是返回True,否则返回False。
3、os.path.isfile(path)
判断是否是文件
判断path是否是文件,如果是返回True,否则返回False。
4、os.path.isdir(path)
判断是否是目录
判断path是否是目录,如果是目录返回True,否则返回False。
5、os.path.getsize(path): 单位是字节
返回文件或者目录的大小。获得文件大小,如果name是目录返回0L;如果name代表的目录或文件不存在,怎会报WindowsError异常。
6、os.path.abspath(path)
获取绝对路径,(但这个路径不一定是真实存在的路径)
eg:
print os.path.abspath('d:\\tmp\\test13.txt')
print os.path.abspath('test13.txt')#返回当前执行目录下的文件名的路径,文件没有的时候也会返回
print os.getcwd()
结果:
d:\tmp\test13.txt
D:\python\0512\test13.txt
D:\python\0512
7、os.path.normpath(path)
把path转换为标准的路径。用于解决跨平台问题
 
五、从路径中获取盘符,文件名,扩展名,目录
1、os.path.split(path)
对文件路径做分割,把最后一个\\后面的文件会目录分割出来
将path分割成目录和文件名(事实上,如果你完全使用目录,它也会将最后一个目录作为文件名而分离,同时它不会判断文件或目录是否存在),并存于元组中返回。
eg:
print os.path.split('D:\\tt4\\c12')
print os.path.split('D:\\tt4\\c12\\')
print os.path.split('D:\\tt4\\c12\\t1.txt')
结果:
('D:\\tt4', 'c12')
('D:\\tt4\\c12', '')
('D:\\tt4\\c12', 't1.txt')
2、os.path.dirname(path)
 
返回目录的名称
返回path的目录路径,其实就是os.path.split(path)的第一个元素。
3、os.path.basename(path)
返回文件的名称
返回path最后的文件名。如果path以/或\结尾,就会返回空值。即os.path.split(path)的第二个元素。
4、os.path.splitext(path)
把路径和扩展名切分开
print os.path.splitext('01.py')
print os.path.splitext('d:\\tmp\\001.txt')
print os.path.splitext('D:\\tt4\\c12')
结果:
('01', '.py')
('d:\\tmp\\001', '.txt')
('D:\\tt4\\c12', '')
fileName,expandName = os.path.splitext(f)
把路径和扩展名分开后可以直接赋值给两个变量,其实得到的是一个元组
5、os.path.splitdrive(path)
拆分驱动器(盘符)和后面的路径。拆分驱动器和文件路径,并以元组返回结果;主要针对win有效,Linux元组第一个总是空。
返回结果是元祖
6、os.path.join(path,*paths)
把所有的路径组合成绝对路径。连接两个或更多的路径名,中间以“\”分隔,如果所给的参数中都是绝对路径名,那最先给的绝对路径将会被丢弃。

Python之文件操作:os模块的更多相关文章

  1. python之文件系统操作(os模块)

    文件系统操作(os模块) import os file_name = "D:\\test_data\\1.txt" file_name_2 = "D:\\test_dat ...

  2. python文件操作os模块

    Python 统计某一文件夹下文件数量 使用python  pathlib模块 from pathlib import Path dir_path = ' ' print(len(list(Path( ...

  3. python(3):文件操作/os库

      文件基本操作 r,以读模式打开,  r+=r+w, w, 写模式(清空原来的内容), w+=w+r, a , 追加模式, a+=a+r, rb, wb, ab, b表示以二进制文件打开 想在一段文 ...

  4. python文件、文件夹操作OS模块

    转自:python文件.文件夹操作OS模块   '''一.python中对文件.文件夹操作时经常用到的os模块和shutil模块常用方法.1.得到当前工作目录,即当前Python脚本工作的目录路径: ...

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

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

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

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

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

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

  8. Python学习【第4篇】:Python之文件操作

    文件操作 读取一行 f=open("D:\\1.txt",'rb') print f.readline() f.close() 将文件内容保存在一个list with open(& ...

  9. python的文件操作及简单的用例

    一.python的文件操作介绍 1.文件操作函数介绍 open() 打开一个文件 语法:open(file, mode='r', buffering=-1, encoding=None, errors ...

  10. Python 入门之 内置模块 -- os模块

    Python 入门之 内置模块 -- os模块 1.os os是和操作系统做交互,给操作发指令 os模块是与操作系统交互的一个接口,它提供的功能多与工作目录,路径,文件等相关 (1)工作路径 prin ...

随机推荐

  1. kafka浅谈

    关键词 producer       生产者 broker          缓存代理 consumer     消费者 partition       分区 topic            主题 ...

  2. 请教Amazon FBA里面Label Service, Stickerless, Commingled Inventory是什么意思?

    Accept Label Service接受标签服务,选择了以后下面的操作中会有一个让您打印标签的流程,您就可以按照FBA流程提示进行每一步标签服务的操作. Accept Stickless, Com ...

  3. ASP.NET 异步Web API + jQuery Ajax 文件上传代码小析

    该示例中实际上应用了 jquery ajax(web client) + async web api 双异步. jquery ajax post $.ajax({ type: "POST&q ...

  4. [shell] 循环判断输入值

    做个记录 until [[ $flag == "yes" || $flag == "exit" ]] do read -p "请确认统一/合服前后数据 ...

  5. django的htpp请求之WSGIRequest

    WSGIRequest对象 Django在接收到http请求之后,会根据http请求携带的参数以及报文信息创建一个WSGIRequest对象,并且作为视图函数第一个参数传给视图函数.这个参数就是dja ...

  6. BVT与冒烟测试

    [BVT的释义] BVT的全称是Build Verification Test.可以说这个全称就是BVT的定义了. BVT只验证build构建的成功与失败,不深入测试构建好的build的功能.性能等等 ...

  7. 后端编程语言PHP

    | 版权声明:本文为博主原创文章,未经博主允许不得转载. 一.PHP 简介 PHP 是一种创建动态交互性站点的强有力的服务器端脚本语言. PHP 脚本在服务器上执行. 什么是 PHP?(超文本预处理器 ...

  8. WPF/MVVM快速指引

    简介 最近微软推出了UWA,又是一波新的C#+xaml学习热.好多小伙伴都对MVVM感觉很好奇,但是有些地方也有点难以理解.特意写了这边文章,希望对你有帮助. 这边文章会很长,所以我会用几个例子的形式 ...

  9. 碰到的一个新的东西——yaml,果然是个好东西

    yaml 基础语法可以看阮一峰大大的博客[yaml 语言教程] 看过了 xml 和 json之后,看一眼这个 yaml,觉得少写了好多东西,不用再去找层级关系了, yaml 直接一目了然,没有了尖括号 ...

  10. Delphi 组件渐进开发浅谈(一)——由简入繁

    最近业余时间在写游戏修改器玩,对于Delphi自带的组件总觉得差强人意,需要书写大量冗余代码,如果大量使用第三方组件,在以后的移植和与他人交互时也不是很方便,因此便产生了自己封装组件的想法. 实际上这 ...