Python os主要变量笔记

Python os模块是Python提供的访问操作系统功能的模块,如打开、读、写、关闭文件,访问目录等等。使用os模块Python开发者可以方便的开发出跨平台的软件。使用os模块可以做到:

1、方便的调用操作系统的基本功能

2、开发跨平台的软件

3、os模块是操作系统相关功能的轻量级封装,对于特定的复杂功能还是应该使用专用的模块。如:只想读取或写入文件,可以使用os.open(),如果要操作路径, 可以使用os.path模块;但,如果要在命令行上,读取所有文件中的所有行,请使用fileinput 模块;创建临时文件和目录的信息,可以使用tempfile 模块,高级文件和目录处理可以使用shutil 模块。

需要注意的是,os模块是和操作系统相关的,也有部分功能是某种操作系统独有的(不可移植)。

关于使用os模块的几点说明:

1、Python的所有内建操作系统相关模块的设计是这样的,只要相同的功能可用,它使用相同的接口;例如,函数os.stat(path)以相同的格式返回关于路径的统计信息(这恰好源于POSIX接口)。

2、Python os模块的功能是和操作系统相关,有些功能不具备移植性,如在Linux操作系统下, os 模块有fork()函数,在windows系统下os模块就没有fork()函数。

3、函数参数如果是路径或文件名的,参数只接受字节和字符串对象,如果返回路径或文件名,则会生成相同类型的对象。

4、如果只用所有平台都定义的属性和接口,是可以使程序在各个平台间有更好的移植性。如:所有的路径名,都使用os.path操作(split和join)。

注:os模块函数可能发生OSError,导致发生OSError异常的情况有:

1、无效的路径名或文件名

2、给出的路径名或文件名无法访问

3、当前使用的系统不支持

os模块的几个变量:

- os.error:内建OSError exception的别名。

- os.name:操作系统类型,不同版本Python可能不同,通常是“POSIX”或“NT”

- os.curdir:表示当前路径,(总是“.“)

- os.pardir:表示父目录,(总是“..”)

- os.sep:路径名中的路径分隔符(“/”或“\”)

- os.extsep:文件名和扩展名分隔符(总是“.”)

- os.altsep:操作系统支持的另外一种路径分隔符(None,‘/’)。如果所用的操作系统支持其他的分隔符,就可以使用os.altsep分隔、拆分路径;如果系统不支持,那么该值为None,如在Windows中,os.altsep为‘/’,在Linux系统中为None。

- os.pathsep:PATH环境变量中的分隔符,在POSIX系统中为‘:’,在Windows中为‘;’。

- os.linesep:文本行分隔符(“\r”或“\n”或“\r\n”)。不同操作系统下,文本行结束符不同,如windows下是\r\n,Linux系统下是\n,os.linesep是操作系统的行结束符。

- os.defpath:当使用exec函数族的时候,如果没有指定PATH环境变量,则默认会查找os.defpath中的值作为子进程PATH的值。

- os.devnull:系统上null设备的路径。(“/dev/null”,等),在Windows下为‘nul’,在POSIX下为‘/dev/null’。

os模块变量示例:

使用os模块要先导入,名称:os

windows环境下:

Linux环境下:

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180315A1U5PR00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

扫码关注云+社区

领取腾讯云代金券