第12.1节 Python os模块导览

os 模块提供了许多与操作系统交互的函数,一定要使用 import os 而不是 from os import * ,这将避免内建的 open() 函数被 os.open() 隐式替换掉,它们的使用方式大不相同。具体二者的差别请参考《Python文件操作函数os.open、io.open、内置函数open之间的关系》。
该模块提供了一些方便使用操作系统相关功能的函数。 如果你是想读写一个文件,请参阅 open(),如果你想操作路径,请参阅 os.path 模块,如果你想在命令行上读取所有文件中的所有行请参阅 fileinput 模块。 有关创建临时文件和目录的方法,请参阅 tempfile 模块,对于高级文件目录处理,请参阅 shutil 模块。

os模块的部分重要成员:

  1. exception os.error:内建的 OSError 异常的一个别名。
  2. os.name:导入的依赖特定操作系统的模块的名称。以下名称目前已注册: ‘posix’, ‘nt’, ‘java’.
  3. os.environ:一个表示字符串环境的 mapping 对象,返回操作系统的环境变量及其值
  4. os.putenv(key, value),将名为 key 的环境变量值设置为 value。该变量名修改会影响由 os.system(), popen() ,fork() 和 execv() 发起的子进程
  5. os.chdir(path):改变系统的当前工作目录
  6. os.getcwd():返回当前工作目录
  7. os.getenv(key, default=None),返回环境变量 key 的值,key不存在则返回 default对应的值
  8. os.getpid():返回当前进程ID
  9. os.getlogin():返回当前登录用户名
  10. os.strerror(code):根据 code 中的错误码返回错误消息。 在某些平台上当给出未知错误码时 strerror() 将返回 NULL 并会引发 ValueError
  11. os.unsetenv(key):取消设置(删除)名为 key 的环境变量。变量名的改变会影响由 os.system(),popen(),fork() 和 execv() 触发的子进程。
  12. os.fdopen(fd, *args, **kwargs):返回打开文件描述符 fd 对应文件的对象。类似内建 open() 函数,二者接受同样的参数。不同之处在于 fdopen() 第一个参数应该为整数。文件描述符是一些小的整数,对应于当前进程所打开的文件。例如,标准输入的文件描述符通常是0,标准输出是1,标准错误是2。之后被进程打开的文件的文件描述符会被依次指定为3,4,5等。“文件描述符”这个词有点误导性,在 Unix 平台中套接字和管道也被文件描述符所引用。
  13. 当需要时,可以用 fileno() 可以获得 file object 所对应的文件描述符。需要注意的是,直接使用文件描述符会绕过文件对象的方法,会忽略如数据内部缓冲等情况。
  14. os.close(fd):关闭文件描述符 fd。该功能适用于低级 I/O 操作,必须用于 os.open() 或 pipe() 返回的文件描述符。
  15. os.dup(fd):返回一个文件描述符 fd 的副本。该文件描述符的副本是 不可继承的。在 Windows 中,当复制一个标准流(0: stdin, 1: stdout, 2: stderr)时,新的文件描述符是 可继承的。
  16. os.dup2(fd, fd2, inheritable=True)文件描述符 fd 复制为 fd2,必要时先关闭后者。返回 fd2。新的文件描述符默认是 可继承的,除非在 inheritable 为 False 时,是不可继承的。
  17. os.fsync(fd):强制将文件描述符fd的文件写入存储,如果文件是内建函数open打开的文件对象并开启了缓冲,则需要先调用文件对象的flush函数刷新缓冲再调用本函数;
  18. os.ftruncate(fd, length):将文件长截断为指定长度,length不能超过文件本身的长度
  19. os.lseek(fd, pos, how):文件定位函数
  20. os.open(path, flags, mode=0o777, *, dir_fd=None):文件打开函数
  21. os.pipe():创建管道用于进行读写,返回一个用于读和写的文件描述符对;
  22. os.sendfile(out, in, offset, count):从文件描述符in对应文件的offset位置拷贝最多count字节到文件描述符out对应文件,不到count字节时遇到in文件结束则终止,windows不支持
  23. os.write(fd, str):写入文件
  24. os.access(path, mode, *, dir_fd=None, effective_ids=False, follow_symlinks=True):验证路径是否可读、写、执行
  25. os.chmod(path, mode, *, dir_fd=None, follow_symlinks=True):改变文件的权限
  26. os.chown(path, uid, gid, *, dir_fd=None, follow_symlinks=True):改变文件的属主
  27. os.listdir(path=’.’):列出目录内的内容
  28. os.mkdir(path, mode=0o777, *, dir_fd=None):创建新目录
  29. os.remove(path, *, dir_fd=None):删除文件
  30. os.removedirs(name):递归删除目录,目录必须为空
  31. os.rename(src, dst, *, src_dir_fd=None, dst_dir_fd=None):文件或目录改名
  32. os.renames(old, new):文件和目录递归改名,这个老猿暂时没弄明白
  33. os.replace(src, dst, *, src_dir_fd=None, dst_dir_fd=None):将文件或目录从src改为dst
  34. os.rmdir(path, *, dir_fd=None):删除目录
  35. os.scandir(path=’.’):返回一个path对应目录的os.DirEntry迭代器
  36. os.stat(path, *, dir_fd=None, follow_symlinks=True):返回文件的状态
  37. os.sync():强制写入所有缓存到磁盘,windows不可用
  38. os.truncate(path, length):将文件截断到指定长度
  39. os.startfile(path[, operation]):使用关联应用启动指定的文件,仅windows可用
  40. os.system(command):执行指定的操作系统命令

老猿Python,跟老猿学Python!
博客地址:https://blog.csdn.net/LaoYuanPython

请大家多多支持,点赞、评论和加关注!谢谢!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

LaoYuanPython

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值