python之OS模块

防伪码:忘情公子著

上一章讲的是python的文件对象,python的文件对象只能对普通文件以及某些特殊文件(如套接字、管道等)进行操作,而无法对目录进行操作。目录是属于文件系统的组成部分而不是文件内容的组成部分,而在python中,如果要与文件系统打交道,则要使用文件系统功能,也就是本章要说的OS模块。

OS模块中的一些方法,其实就是把linux系统中的一些api给封装成了python的api,在python中可以直接调用。按文件系统的类型可以将这些api分为以下几种:

与目录相关:

chdir():改变当前工作目录,相当于linux中的cd命令

chroot():设定当前进程的根目录

listdir():列出指定目录下的所有文件名

mkdir():创建指定目录

makedirs():创建多级目录

getcwd():获取当前工作目录

rmdir():删除目录

removedirs():删除多级目录

与文件相关:

mkfifo():创建命名管道

mknod():创建设备文件

remove():删除文件

unlink():删除链接文件

rename():重命名

stat():返回文件状态信息

symlink():创建文件链接

utime():更新时间戳

tmpfile():以(w+b)模式创建并打开一个新的临时文件

walk():目录树生成器,相当于linux中的tree命令

与访问权限相关:

access():判定指定用户对某文件是否有访问权限,只能用uid和gid来表示用户和组

chmod():修改权限

chown():修改属主属组,只能用udi和gid来表示用户和组

umask():设置默认权限遮罩码

与文件描述符相关:

open():底层操作系统的open,可以理解为调用linux系统中C库中的open来打开文件

read():根据文件描述符来读

write():根据文件描述符来写

os.path:实现文件路径本身这个字符串的管理

basename():获取路径文件基名

dirname():获取路径目录名

join():将多个离散的文件路径整合成一个完整的路径

split():分割文件名,返回dirname(),basename()结果的元组

splitext():返回(filename,extension)元组,把文件名和扩展名切割开来

文件信息:

getatime():返回指定文件的最近一次的访问时间

getctime():返回指定文件的最近一次的属性修改时间

getmtime():返回指定文件的最近一次的内容修改时间

getsize():返回文件的大小

判断查询:

exists():判断指定文件是否存在

isabs():判断指定的路径是否为绝对路径

isdir():判断指定的文件是否存在且为目录

isfile():判断指定的文件是否存在且为文件

islink():判断指定的文件是否为符号链接

ismount():判断指定路径是否为挂载点

samefile():判断两个路径是否指向了同一个文件

在python中,无法直接将一个字典写入普通文件中,要想把字典写入普通文件,必须把字典对象流式化,在必要的时候还要能把它还原回原来的字典格式,而能够实现这个功能的模式有2种,这个过程被称作文件的持久存储。

对象持久存储:

pickle模块

dump():将对象存储到磁盘文件中

load():将指定的磁盘文件加载进某变量中

marshal模块

pickle模块和marshal模块都是将内容、对象存储在文件中。在python中还可以使用DBM接口将数据存储在数据库中。但是DBM接口仅仅只是让python能够将数据存储进数据库中,却无法实现流式化,如果既想实现流式化又想往数据库中存储则应使用shelve模块

这就是python中的OS模块常用的方法,仅以此篇作为python学习成长记录。

时间: 2024-10-06 15:44:54

python之OS模块的相关文章

python之OS模块(对文件or目录操作)

OS模块 os,语义为操作系统,包含普遍的操作系统功能,与具体的平台无关.python编程时,处理文件和目录这些操作,就比如说:显示当前目录下所有文件/删除某个文件/获取文件大小-- os模块不受平台限制,也就是说:当我们要在linux中显示当前命令时就要用到pwd命令,而Windows中cmd命令行下就要用到这个,例如:这时候我们使用python中os模块的os.path.abspath(name)功能,甭管是linux或者Windows都可以获取当前的绝对路径. 常见函数列表 os.name

python的os模块批量获取目标路径下的文件名

目前在做一个项目开发与变更专项稽核,但是所抽取的目标项目,样本所附电子版文件上千个,需要判断文档完整性,就需要所有文档名清单. python的os模块好像是对这块比较擅长,就去翻了下文档,试着写了,效果还可以. 1 import os 2 3 #通过文件获取目标路径 4 file2=open(r'd:\dirname.txt','r') 5 a=file2.readlines() 6 file2.close() 7 8 #遍历目标路径下文件路径及名字,并写入新文件abc.txt 9 file1=

python中os模块中文帮助

python中os模块中文帮助 python中os模块中文帮助文档文章分类:Python编程 python中os模块中文帮助文档 翻译者:butalnd 翻译于2010.1.7——2010.1.8,个人博客:http://butlandblog.appspot.com/ 注此模块中关于unix中的函数大部分都被略过,翻译主要针对WINDOWS,翻译速度很快,其中很多不足之处请多多包涵. 这个模块提供了一个轻便的方法使用要依赖操作系统的功能. 如何你只是想读或写文件,请使用open() ,如果你想

Python的os模块的一些常见文件和目录操作

转自:极客学院 Python 的 os 模块封装了常见的文件和目录操作,本文只列出部分常用的方法,更多的方法可以查看官方文档. 下面是部分常见的用法: 方法 说明  os.mkdir  创建目录 os.rmdir  删除目录  os.rename  重命名 os.remove 删除文件  os.getcwd 获取当前工作路径 os.walk 遍历目录 os.path.join 连接目录与文件名 os.path.split 分割文件名与目录 os.path.abspath 获取绝对路径 os.pa

python中os模块在windows下的使用

今天学习了一下Python的os模块,主要是针对文件夹和文件路径的一系列操作. 与Python内置函数相比这里这里的函数功能更多样化,功能也更强大.但是学习过程中我发现很多函数都是只适用于unix系统,可能因为它是开源系统,涉及权限的api都是开放的缘故吧.但也正是如此,当我们再Windows上学习Python时,本来这个板块就难以理解,还具有不可操作性.学起来感觉很受打击. 所以这里把Windows上能用,且适用的函数记录下来,以便于以后复习: 1,os.lseek(fd,pos,how) 方

python的os模块总结

python的os模块总结 目录 常用方法和属性总结 文件操作 目录操作 常用方法和属性总结 os.getcwd() 获取当前工作目录,即当前python脚本工作的目录路径 os.chdir("dirname") 改变当前脚本工作目录:相当于shell下cd os.curdir 返回当前目录: ('.') os.pardir 获取当前目录的父目录字符串名:('..') os.makedirs('dirname1/dirname2') 可生成多层递归目录 os.mkdir("d

Python的OS模块批量修改文件名

大量文件名需要进行有序整理时,可以使用Python的OS模块进行文件批量重命名,脚本如下: import os path = 'D:\PycharmProjects\download_photos\down_photos' #文件路径 count = 1 filelist = os.listdir(path) #该文件夹下所有文件 def rename(): global count for files in filelist: #遍历文件 Olddir = os.path.join(path,

python中os模块

来源http://www.educity.cn/wenda/354028.html python 路径相关的函数os.listdir(dirname):列出dirname下的目录和文件 os.getcwd():获得当前工作目录 os.curdir:返回当前目录('.') os.chdir(dirname):改变工作目录到dirname os.path.isdir(name):判断name是不是一个目录,name不是目录就返回false os.path.isfile(name):判断name是不是

python 之 os 模块的常见用法

在Python的标准库os模块中包含普遍的操作系统功能 os 模块引入的方法是: import os 以下为 os 模块常见的使用方法: 1.os.getcwd 获取当前的工作目录,即程序执行的目录 2.os.name 字符串指示正在使用的平台.比如,windows是"nt",linux 或 unix 是"posix" 3.os.getenv()  读取环境变量.比如,os.getenv('PATH') 4.os.setenv()  设置环境变量. 5.os.lis