Python os模块常用方法和属性总结
这篇文章主要介绍了Python os模块常用方法和属性总结,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
1. os 模块常用的方法及属性
os.sep:取代操作系统特定的路径分隔符 os.name:指示你正在使用的工作平台。比如对于Windows,它是'nt',而对于Linux/Unix用户,它是'posix'。 os.getcwd:得到当前工作目录,即当前python脚本工作的目录路径。 os.getenv()和os.putenv:分别用来读取和设置环境变量 os.listdir():返回指定目录下的所有文件和目录名 os.remove(file):删除一个文件 os.stat(file): 获得文件属性 os.chmod(file): 修改文件权限和时间戳 os.mkdir(name): 创建目录 os.rmdir(name): 删除目录 os.removedirs(r“c:\python”): 删除多个目录 os.system(): 运行shell命令。os.system 的结果只是命令执行结果的返回值,执行成功为0 os.popen(command[, mode[, bufsize]]): os.popen() 方法用于从一个命令打开一个管道。popen返回的是file read的对象,对其进行读取使用read() os.exit(): 终止当前进程 os.mknod(): 创建空文件 os.linesep: 给出当前平台的行终止符。例如,Windows使用'\r\n',Linux使用'\n'而Mac使用'\r' os.path.exist(): 检验给出的路径是否真的存在 os.listdir(dirname): 列出dirname下的目录和文件 os.getcwd(): 获得当前工作目录 os.curdir: 返回当前目录('.') os.chdir(dirname): 改变工作目录到dirname os.path.isdir(name): 判断name是不是目录,不是目录就返回false os.path.isfile(name): 判断name这个文件是否存在,不存在返回false os.path.exists(name): 判断是否存在文件或目录name os.path.getsize(name): 或得文件大小,如果name是目录返回0L os.path.getatime(path): 返回上次访问路径的时间,返回值是一个浮点数 os.path.getmtime(path): 返回上次修改一路径的时间,返回值是一个浮点数 os.path.getctime(path): 返回系统的ctime,在某些系统(如Unix)上是最后一次元数据更改的时间,而在其他系统(如Windows)上则是路径的创建时间。返回值是一个数字 os.path.abspath(name): 返回一个目录的绝对路径 os.path.realpath(path): 返回指定文件的标准路径,而非软链接所在的路径 os.path.isabs(): 判断是否为绝对路径 os.path.normpath(path): 规范path字符串形式。示例: os.path.normpath('c://windows\\System32\\../Temp/') # 输出'c:\\windows\\Temp' os.path.split(name): 分割文件名与目录(事实上,如果你完全使用目录,它也会将最后一个目录作为文件名而分离,同时它不会判断文件或目录是否存在),示例: ('F:/Technology-20161005/python/python_project/demo/os_sysdemo', 'sysdemo.py') os.path.splitext(): 分离文件名和扩展名 # ('F:/Technology-20161005/python/python_project/demo/os_sysdemo/sysdemo', '.py') os.path.join(path,name): 连接目录与文件名或目录 os.path.basename(path): 返回文件名 os.path.dirname(path): 返回文件路径
2. 常用方法
统计当前目录下已经创建的文件
current_path = os.path.realpath('.') start_time = time.time() # 判断当前路径下比当前时刻早的已经创建的文件 created_files = [name for name in os.listdir(current_path) if os.path.isfile(os.path.join(current_path, name)) and os.path.getctime(os.path.join(current_path, name)) < start_time] print created_files
统计当前目录下后创建的文件
current_path = os.path.realpath('.') start_time = time.time() # 判断当前路径下后创建的文件 created_files = [name for name in os.listdir(current_path) if os.path.isfile(os.path.join(current_path, name)) and os.path.getmtime(os.path.join(current_path, name)) > start_time] print created_files
删除文件操作
import os, errno def silent_remove_of_file(file): try: os.remove(file) except OSError as e: if e.errno != errno.ENOENT: raise e return False return True
赞 (0)