Python os模块常用方法和属性总结


Posted in Python onFebruary 20, 2020

这篇文章主要介绍了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

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python xml.etree.ElementTree遍历xml所有节点实例详解
Dec 04 Python
Python应用03 使用PyQT制作视频播放器实例
Dec 07 Python
Python Socket传输文件示例
Jan 16 Python
[原创]windows下Anaconda的安装与配置正解(Anaconda入门教程)
Apr 05 Python
深入分析python中整型不会溢出问题
Jun 18 Python
Pycharm+Scrapy安装并且初始化项目的方法
Jan 15 Python
Python类中self参数用法详解
Feb 13 Python
Python run()函数和start()函数的比较和差别介绍
May 03 Python
关于python的缩进规则的知识点详解
Jun 22 Python
如何利用python发送邮件
Sep 26 Python
python实现web邮箱扫描的示例(附源码)
Mar 30 Python
利用Python读取微信朋友圈的多种方法总结
Aug 23 Python
Python requests获取网页常用方法解析
Feb 20 #Python
pytorch实现保证每次运行使用的随机数都相同
Feb 20 #Python
Python argparse模块使用方法解析
Feb 20 #Python
浅谈pytorch torch.backends.cudnn设置作用
Feb 20 #Python
Python sqlite3查询操作过程解析
Feb 20 #Python
python利用datetime模块计算程序运行时间问题
Feb 20 #Python
pytorch数据预处理错误的解决
Feb 20 #Python
You might like
php Ajax乱码
2008/04/09 PHP
基于HBase Thrift接口的一些使用问题及相关注意事项的详解
2013/06/03 PHP
PHP实现支持GET,POST,Multipart/form-data的HTTP请求类
2014/09/24 PHP
PHP云打印类完整示例
2016/10/15 PHP
laravel5环境隐藏index.php后缀(apache)的方法
2019/10/12 PHP
Javascript注入技巧
2007/06/22 Javascript
jQuery EasyUI 的EasyLoader功能介绍
2010/09/12 Javascript
textarea焦点的用法实现获取焦点清空失去焦点提示效果
2014/05/19 Javascript
javascript实现的一个随机点名功能
2014/08/26 Javascript
一个css与js结合的下拉菜单支持主流浏览器
2014/10/08 Javascript
jQuery中ajax的load()方法用法实例
2014/12/26 Javascript
jquery图片轮播特效代码分享
2020/04/20 Javascript
详解javascript事件冒泡
2016/01/09 Javascript
全面接触神奇的Bootstrap导航条实战篇
2016/08/01 Javascript
完美解决jQuery符号$与其他javascript 库、框架冲突的问题
2016/08/09 Javascript
如何解决IONIC页面底部被遮住无法向上滚动问题
2016/09/06 Javascript
Javascript数组中push方法用法分析
2016/10/31 Javascript
深入理解Javascript中的valueOf与toString
2017/01/04 Javascript
JavaScript遍历数组和对象的元素简单操作示例
2019/07/09 Javascript
详解微信小程序开发之formId使用(模板消息)
2019/08/27 Javascript
js与jquery获取input输入框中的值实例讲解
2020/02/27 jQuery
浅析Vue 中的 render 函数
2020/02/28 Javascript
在vue中给后台接口传的值为数组的格式代码
2020/11/12 Javascript
python的一些加密方法及python 加密模块
2019/07/11 Python
python 日期排序的实例代码
2019/07/11 Python
python-sys.stdout作为默认函数参数的实现
2020/02/21 Python
keras 获取某层的输入/输出 tensor 尺寸操作
2020/06/10 Python
使用keras实现Precise, Recall, F1-socre方式
2020/06/15 Python
最新PyCharm从安装到PyCharm永久激活再到PyCharm官方中文汉化详细教程
2020/11/17 Python
浅析与CSS3的loading动画加载相关的transition优化
2015/05/18 HTML / CSS
高中地理教学反思
2014/01/29 职场文书
搞笑欢迎词大全
2015/09/30 职场文书
血轮眼轮回眼特效 html+css
2021/03/31 HTML / CSS
基于Python实现的购物商城管理系统
2021/04/27 Python
解读Vue组件注册方式
2021/05/15 Vue.js
python中取整数的几种方法
2021/11/07 Python