Os模块简介系统功能

python编程时,经常和文件、目录打交道,这是就离不了os模块。os模块包含普遍的操作系统功能,与具体的平台无关。

OS模块使用实例

执行dos命令

Python

os.system(command)

1

os.system(command)

获取当前工作目录

Python

os.getcwd()

1

os.getcwd()

函数得到当前工作目录,即当前Python脚本工作的目录路径。

指定目录下的文件和目录名

Python

#os.listdir()

>>> os.listdir(os.getcwd())

['Django', 'DLLs', 'Doc', 'include', 'Lib', 'libs', 'LICENSE.txt', 'MySQL-python-wininst.log', 'NEWS.txt', 'PIL-wininst.log', 'python.exe', 'pythonw.exe', 'README.txt', 'RemoveMySQL-python.exe', 'RemovePIL.exe', 'Removesetuptools.exe', 'Scripts', 'setuptools-wininst.log', 'tcl', 'Tools', 'w9xpopen.exe']

>>>

1

2

3

4

#os.listdir()

>>>os.listdir(os.getcwd())

['Django','DLLs','Doc','include','Lib','libs','LICENSE.txt','MySQL-python-wininst.log','NEWS.txt','PIL-wininst.log','python.exe','pythonw.exe','README.txt','RemoveMySQL-python.exe','RemovePIL.exe','Removesetuptools.exe','Scripts','setuptools-wininst.log','tcl','Tools','w9xpopen.exe']

>>>

删除一个文件

该方法只能删除文件,不能删除文件夹,删除文件夹需要用shutil模块。

Python

os.remove(r'E:/t.txt')

1

os.remove(r'E:/t.txt')

获取路径的目录名和文件名

Python

#os.path.split()

>>> os.path.split('C:\\Python25\\abc.txt')

('C:\\Python25', 'abc.txt')

1

2

3

#os.path.split()

>>>os.path.split('C:\\Python25\\abc.txt')

('C:\\Python25','abc.txt')

判断是文件还是目录

Python

#os.path.isfile()和os.path.isdir()函数分别检验给出的路径是一个文件还是目录。

>>> os.path.isdir(os.getcwd())

True

>>> os.path.isfile('a.txt')

False

1

2

3

4

5

#os.path.isfile()和os.path.isdir()函数分别检验给出的路径是一个文件还是目录。

>>>os.path.isdir(os.getcwd())

True

>>>os.path.isfile('a.txt')

False

检验给出的路径是否真地存在

Python

#os.path.exists()

>>> os.path.exists('C:\\Python25\\abc.txt')

False

>>> os.path.exists('C:\\Python25')

True

>>>

1

2

3

4

5

6

#os.path.exists()

>>>os.path.exists('C:\\Python25\\abc.txt')

False

>>>os.path.exists('C:\\Python25')

True

>>>

获得绝对路径

Python

os.path.abspath(name)

1

os.path.abspath(name)

获得文件大小

Python

os.path.getsize(name)

1

os.path.getsize(name)

获得文件大小,如果name是目录返回0L

分离文件名与扩展名

Python

#os.path.splitext()

>>> os.path.splitext('a.txt')

('a', '.txt')

1

2

3

#os.path.splitext()

>>>os.path.splitext('a.txt')

('a','.txt')

连接目录与文件名或目录

Python

#os.path.join(path,name)连接目录与文件名或目录

>>> os.path.join('c:\\Python','a.txt')

'c:\\Python\\a.txt'

>>> os.path.join('c:\\Python','f1')

'c:\\Python\\f1'

>>>

1

2

3

4

5

6

#os.path.join(path,name)连接目录与文件名或目录

>>>os.path.join('c:\\Python','a.txt')

'c:\\Python\\a.txt'

>>>os.path.join('c:\\Python','f1')

'c:\\Python\\f1'

>>>

返回文件名

Python

#os.path.basename(path):返回文件名

>>> os.path.basename('a.txt')

'a.txt'

>>> os.path.basename('c:\\Python\\a.txt')

'a.txt'

>>>

1

2

3

4

5

6

#os.path.basename(path):返回文件名

>>>os.path.basename('a.txt')

'a.txt'

>>>os.path.basename('c:\\Python\\a.txt')

'a.txt'

>>>

返回文件路径

Python

#os.path.dirname(path):返回文件路径

>>> os.path.dirname('c:\\Python\\a.txt')

'c:\\Python'

1

2

3

#os.path.dirname(path):返回文件路径

>>>os.path.dirname('c:\\Python\\a.txt')

'c:\\Python'

OS模块函数汇总

序号

方法

描述

1

os.access(path, mode)

检验权限模式

2

os.chdir(path)

改变当前工作目录

3

os.chflags(path, flags)

设置路径的标记为数字标记。

4

os.chmod(path, mode)

更改权限

5

os.chown(path, uid, gid)

更改文件所有者

6

os.chroot(path)

改变当前进程的根目录

7

os.close(fd)

关闭文件描述符 fd

8

os.closerange(fd_low, fd_high)

关闭所有文件描述符,从 fd_low (包含) 到 fd_high (不包含), 错误会忽略

9

os.dup(fd)

复制文件描述符 fd

10

os.dup2(fd, fd2)

将一个文件描述符 fd 复制到另一个 fd2

11

os.fchdir(fd)

通过文件描述符改变当前工作目录

12

os.fchmod(fd, mode)

改变一个文件的访问权限,该文件由参数fd指定,参数mode是Unix下的文件访问权限。

13

os.fchown(fd, uid, gid)

修改一个文件的所有权,这个函数修改一个文件的用户ID和用户组ID,该文件由文件描述符fd指定。

14

os.fdatasync(fd)

强制将文件写入磁盘,该文件由文件描述符fd指定,但是不强制更新文件的状态信息。

15

os.fdopen(fd[, mode[, bufsize]])

通过文件描述符 fd 创建一个文件对象,并返回这个文件对象

16

os.fpathconf(fd, name)

返回一个打开的文件的系统配置信息。name为检索的系统配置的值,它也许是一个定义系统值的字符串,这些名字在很多标准中指定(POSIX.1, Unix 95, Unix 98, 和其它)。

17

os.fstat(fd)

返回文件描述符fd的状态,像stat()。

18

os.fstatvfs(fd)

返回包含文件描述符fd的文件的文件系统的信息,像 statvfs()

19

os.fsync(fd)

强制将文件描述符为fd的文件写入硬盘。

20

os.ftruncate(fd, length)

裁剪文件描述符fd对应的文件, 所以它最大不能超过文件大小。

21

os.getcwd()

返回当前工作目录

22

os.getcwdu()

返回一个当前工作目录的Unicode对象

23

os.isatty(fd)

如果文件描述符fd是打开的,同时与tty(-like)设备相连,则返回true, 否则False。

24

os.lchflags(path, flags)

设置路径的标记为数字标记,类似 chflags(),但是没有软链接

25

os.lchmod(path, mode)

修改连接文件权限

26

os.lchown(path, uid, gid)

更改文件所有者,类似 chown,但是不追踪链接。

27

os.link(src, dst)

创建硬链接,名为参数 dst,指向参数 src

28

os.listdir(path)

返回path指定的文件夹包含的文件或文件夹的名字的列表。

29

os.lseek(fd, pos, how)

设置文件描述符 fd当前位置为pos, how方式修改: SEEK_SET 或者 0 设置从文件开始的计算的pos; SEEK_CUR或者 1 则从当前位置计算; os.SEEK_END或者2则从文件尾部开始. 在unix,Windows中有效

30

os.lstat(path)

像stat(),但是没有软链接

31

os.major(device)

从原始的设备号中提取设备major号码 (使用stat中的st_dev或者st_rdev field)。

32

os.makedev(major, minor)

以major和minor设备号组成一个原始设备号

33

os.makedirs(path[, mode])

递归文件夹创建函数。像mkdir(), 但创建的所有intermediate-level文件夹需要包含子文件夹。

34

os.minor(device)

从原始的设备号中提取设备minor号码 (使用stat中的st_dev或者st_rdev field )。

35

os.mkdir(path[, mode])

以数字mode的mode创建一个名为path的文件夹.默认的 mode 是 0777 (八进制)。

36

os.mkfifo(path[, mode])

创建命名管道,mode 为数字,默认为 0666 (八进制)

37

os.mknod(filename[, mode=0600, device])

创建一个名为filename文件系统节点(文件,设备特别文件或者命名pipe)。

38

os.open(file, flags[, mode])

打开一个文件,并且设置需要的打开选项,mode参数是可选的

39

os.openpty()

打开一个新的伪终端对。返回 pty 和 tty的文件描述符。

40

os.pathconf(path, name)

返回相关文件的系统配置信息。

41

os.pipe()

创建一个管道. 返回一对文件描述符(r, w) 分别为读和写

42

os.popen(command[, mode[, bufsize]])

从一个 command 打开一个管道

43

os.read(fd, n)

从文件描述符 fd 中读取最多 n 个字节,返回包含读取字节的字符串,文件描述符 fd对应文件已达到结尾, 返回一个空字符串。

44

os.readlink(path)

返回软链接所指向的文件

45

os.remove(path)

删除路径为path的文件。如果path 是一个文件夹,将抛出OSError; 查看下面的rmdir()删除一个 directory。

46

os.removedirs(path)

递归删除目录。

47

os.rename(src, dst)

重命名文件或目录,从 src 到 dst

48

os.renames(old, new)

递归地对目录进行更名,也可以对文件进行更名。

49

os.rmdir(path)

删除path指定的空目录,如果目录非空,则抛出一个OSError异常。

50

os.stat(path)

获取path指定的路径的信息,功能等同于C API中的stat()系统调用。

51

os.stat_float_times([newvalue])

决定stat_result是否以float对象显示时间戳

52

os.statvfs(path)

获取指定路径的文件系统统计信息

53

os.symlink(src, dst)

创建一个软链接

54

os.tcgetpgrp(fd)

返回与终端fd(一个由os.open()返回的打开的文件描述符)关联的进程组

55

os.tcsetpgrp(fd, pg)

设置与终端fd(一个由os.open()返回的打开的文件描述符)关联的进程组为pg。

56

os.tempnam([dir[, prefix]])

返回唯一的路径名用于创建临时文件。

57

os.tmpfile()

返回一个打开的模式为(w+b)的文件对象 .这文件对象没有文件夹入口,没有文件描述符,将会自动删除。

58

os.tmpnam()

为创建一个临时文件返回一个唯一的路径

59

os.ttyname(fd)

返回一个字符串,它表示与文件描述符fd 关联的终端设备。如果fd 没有与终端设备关联,则引发一个异常。

60

os.unlink(path)

删除文件路径

61

os.utime(path, times)

返回指定的path文件的访问和修改的时间。

62

os.walk(top[, topdown=True[, οnerrοr=None[, followlinks=False]]])

输出在文件夹中的文件名通过在树中游走,向上或者向下。

63

os.write(fd, str)

写入字符串到文件描述符 fd中. 返回实际写入的字符串长度

python查看模块功能_Python模块Os系统功能相关推荐

  1. python模块手册_python模块说明

    广告关闭 腾讯云11.11云上盛惠 ,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高返5000元! python模块说明:类似于函数式编程和面向过程编程,函数式编程则完成一个功能, ...

  2. python查看模块功能_Python进阶之inspect模块使用详解

    前几篇内容我们详细探讨了如何从Python中获取帮助信息: 前情回顾 1.查看模块.类提供了哪些接口: 需要帮助吗?dir函数的孪生兄弟,Python中魔法方法__dir__详解 2.查看对象内部属性 ...

  3. python编写代码实现文件的拷贝功能_python利用os模块编写文件复制功能——copy()函数用法...

    我就废话不多说了,大家还是直接看代码吧~ #文件复制 import os src_path=r'E:\Pycharm\python100题\代码' target_path=r'E:\Pycharm\p ...

  4. python中sys用法_python中os和sys模块的区别与常用方法总结

    python 的 python中os和sys模块的区别与常用方法总结 前言 本文主要介绍了关于python中os和sys模块区别与常用方法的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看 ...

  5. python 苹果李子橙_Python模块知识6:OS、SYS模块

    1.os模块,和系统相关的,比如获取路径.目录.文件夹之类 常用方法: os.getcwd() #获取当前工作目录,即当前Python脚本工作的目录路径 os.rename('oldname','ne ...

  6. python os模块详细_python之os模块详解

    importos#os.getcwd() 获取当前工作目录,即当前python脚本工作的目录路径#print(os.getcwd()) # G:\python二期\一月\day18 #os.curdi ...

  7. python实现登录功能_python实现用户登录功能模块

    python实现登录功能模块#!/usr/bin/env python while True: user = raw_input('Please input username:') if user = ...

  8. python模块讲解_python模块详解 | filecmp

    原博文 2020-04-30 14:33 − 简介: filecmp是python内置的一个模块,用于比较文件及文件夹的内容,它是一个轻量级的工具,使用非常简单 两个主要的方法: filecmp.cm ...

  9. python模块使用_PYthon模块使用教程(最新).doc

    您所在位置:网站首页 > 海量文档 &nbsp>&nbsp计算机&nbsp>&nbspPython PYthon模块使用教程(最新).doc63页 本 ...

最新文章

  1. [Selenium] 如何在老版本的Chrome 浏览器上使用selenium
  2. [Cocos2d-x] init()和onEnter()方法的区别
  3. JUC与JVM并发编程学习笔记01
  4. 揭秘 IFTTT 每天处理几十亿事件数据的基础结构
  5. 操作失败,错误为 0x00000bcb
  6. 解读全新闪存FlashSystem 9100
  7. kibana 7.5.1 + apm 7.5.1实现应用性能(apm)监控
  8. 无线怎么计算机网络地址,如何查看无线路由器ip地址?
  9. Vue .sync 语法糖
  10. YarnAllocator:Container killed by YARN for exceeding memory limits. spark.yarn.executor.memoryOverhe
  11. 瑞尔森大学计算机科学研究生,瑞尔森大学计算机科学硕士申请.pdf
  12. python计算年龄的方法_巧算年龄-随心随性无为而为-51CTO博客
  13. The Chivalrous Cow(BFS+最短路径)
  14. 如何提升程序员的非技术才能
  15. 火星玩家Mars全球合伙人招募计划启动:为电核户外可持续发展贡献实质力量
  16. kingcms php 下载,KingCMS企业版(PHP) v6.1.1641(Sp2)
  17. 保研之旅(中科院空天院、武汉大学、华南理工大学、 北京理工大学、中科院国家空间科学中心)
  18. oracle 添加删除 某个字段,并添加注释
  19. python 菜鸟学院-Python菜鸟晋级视频课程(上)
  20. textjoin去重_excel中几列相同的数据,多列去重? | excel表格删除重复数据

热门文章

  1. concurrent map使用
  2. Hadoop之DataNode工作机制
  3. QT隐式调用VC开发的DLL
  4. eclipse开发javaweb项目中The superclass javax.servlet.http.HttpServlet was not found on the Java Build
  5. leetcode 559. N 叉树的最大深度(Java版,N叉树的深度优先搜索)
  6. 高并发负载均衡(一):网络协议原理
  7. MySQL调优(三):索引基本实现原理及索引优化,哈希索引 / 组合索引 / 簇族索引等
  8. 网络与IO知识扫盲(五):从 NIO 到多路复用器
  9. 【Python】SQLAlchemy长时间未请求,数据库连接断开的原因、解决方案
  10. 密码学系列之:加密货币中的scrypt算法