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. Linux 深入理解inode/block/superblock

    基础命令学习目录首页 原文链接:https://blog.csdn.net/Ohmyberry/article/details/80427492 档案系统特性 传统的磁盘与档案系统之应用中,一个分割槽 ...

  2. 第六次ScrumMeeting博客

    第六次ScrumMeeting博客 本次会议于10月31日(二)22时整在3公寓725房间召开,持续15分钟. 与会人员:刘畅.辛德泰.窦鑫泽.张安澜.赵奕.方科栋. 除了汇报任务外,窦鑫泽同学还就前 ...

  3. ArrayList中ensureCapacity的使用与优化

    对于ArrayLis中有一个方法ensureCapacity(int n),这个方法可以对ArrayList低层的数组进行扩容,显示的调用这个函数,如果参数大于低层数组长度的1.5倍,那么这个数组的容 ...

  4. [笔记] centos6.6编译安装httpd2.4.10

    系统安装包是CentOS-6.6-x86_64-minimal.iso 查看一下uname信息 [root@localhost ~]# uname -a Linux localhost.localdo ...

  5. 哈夫曼(Huffman)树+哈夫曼编码

    前天acm实验课,老师教了几种排序,抓的一套题上有一个哈夫曼树的题,正好之前离散数学也讲过哈夫曼树,这里我就结合课本,整理一篇关于哈夫曼树的博客. 主要摘自https://www.cnblogs.co ...

  6. 读<<我是IT小小鸟>>

    <倔强><怒放的生命>以歌曲的含义来引入文章,让文章可以与音乐产生共鸣让读者可以直接明了的就直击到本篇文章的中心含义是非常受用的,在文中写了许多以自己为视角,以自己的成长经历来 ...

  7. 领悟JavaScript面向对象

    JavaScript 是面向对象的.但是不少人对这一点理解得并不全面. 在 JavaScript 中,对象分为两种.一种可以称为“普通对象”,就是我们所普遍理解的那些:数字.日期.用户自定义的对象(如 ...

  8. 【转】mysql force Index 强制索引

    其他强制操作,优先操作如下: mysql常用的hint 对于经常使用oracle的朋友可能知道,oracle的hint功能种类很多,对于优化sql语句提供了很多方法.同样,在mysql里,也有类似的h ...

  9. Java7 Fork-Join 框架:任务切分,并行处理

    概要 现代的计算机已经向多CPU方向发展,即使是普通的PC,甚至现在的智能手机.多核处理器已被广泛应用.在未来,处理器的核心数将会发展的越来越多.虽然硬件上的多核CPU已经十分成熟,但是很多应用程序并 ...

  10. postman md5加密 然后传给下一个接口作为参数调用

    https://www.v2ex.com/api/nodes/show.json?name=python get请求 断言: tests["Body matches string" ...