当前位置: 首页 > 编程笔记 >

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

陶星辰
2023-03-14
本文向大家介绍Python os模块常用方法和属性总结,包括了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

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持小牛知识库。

 类似资料:
  • 本文向大家介绍Node.js中process模块常用的属性和方法,包括了Node.js中process模块常用的属性和方法的使用技巧和注意事项,需要的朋友参考一下 前言 虽然node对操作系统做了很多抽象的工作,但是你还是可以直接和他交互,比如和系统中已经存在的进程进行交互,创建工作子进程。node是一个用于事件循环的线程,但是你可以在这个事件循环之外创建其他的进程(线程)参与工作。 如果不是和命

  • BOM 提供了一些很实用的特性,如定时器、弹出框、窗口尺寸等。 1. 弹出框 BOM 提供了三种弹出框: window.alert 警告框 window.prompt 提示框 window.confirm 确认框 三种弹出框都会阻塞 JavaScript 的执行,用户与弹出框交互后才会继续执行代码。 调用弹出框时可以省略 window。 1.1 警告框 警告框在 demo 和调试过程中比较常用。

  • 在Elixir中,模块属性(module attributes)主要服务于三个目的: 作为一个模块的注解(annotations),通常附加上用户或虚拟机会用到的信息 作为常量 在编译时作为一个临时的模块存储机制 下面让我们来一一讲解。 作为注解(annotations) Elixir从Erlang带来了模块属性的概念。如: defmodule MyServer do @vsn 2 end 这

  • 本文向大家介绍javascript常用方法总结,包括了javascript常用方法总结的使用技巧和注意事项,需要的朋友参考一下 1、JavaScript:写入 HTML 输出 2、JavaScript:对事件作出反应 3、JavaScript:改变 HTML 内容 4、JavaScript:改变 HTML 图像 5、改变 HTML 样式 6、JavaScript 对大小写敏感。 JavaScrip

  • 问题内容: 我有一个包含许多文件的目录。每个文件定义一些类。我的目录中也有一个空白。 例如: 我正在尝试导入和访问所有这些文件中定义的类: 这给我一个错误的说法,即没有属性。为什么?为什么我只能访问其中一个文件(),而不能访问其他文件? 问题答案: 问题是子模块不会自动导入。您必须显式导入模块: 如果您真的坚持要在导入时可用,则可以输入以下内容: 然后,这将按预期工作:

  • 问题内容: 我想动态加载模块,给定它的字符串名(来自环境变量)。我正在使用Python 2.7。我知道我可以做类似的事情: 这大致相当于 (其中)。问题是,我需要相当于 因为我希望能够访问模块中的所有方法和变量。我试过了 但是这样做会导致很多错误。有没有一种方法可以在Python 2.7中动态导入模块的所有方法和属性? 问题答案: 如果您有模块对象,则可以模仿逻辑用法,如下所示: 但是,这几乎肯定