os模块介绍

一、os模块概述

Python os模块包含普遍的操作系统功能。如果你希望你的程序能够与平台无关的话,这个模块是尤为重要的。(一语中的)

二、常用方法

1、os.name

输出字符串指示正在使用的平台。如果是window 则用'nt'表示,对于Linux/Unix用户,它是'posix'。

2、os.getcwd()

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

3、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']
>>> 

4、os.remove()

删除一个文件。

5、os.system()

运行shell命令。

>>> os.system('dir')
0
>>> os.system('cmd') #启动dos

6、os.sep 可以取代操作系统特定的路径分割符。

7、os.linesep字符串给出当前平台使用的行终止符

>>> os.linesep
'\r\n'            #Windows使用'\r\n',Linux使用'\n'而Mac使用'\r'。
>>> os.sep
'\\'              #Windows
>>> 

8、os.path.split()

函数返回一个路径的目录名和文件名

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

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

>>> os.path.isdir(os.getcwd())
True
>>> os.path.isfile('a.txt')
False

10、os.path.exists()函数用来检验给出的路径是否真地存在

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

11、os.path.abspath(name):获得绝对路径

12、os.path.normpath(path):规范path字符串形式

13、os.path.getsize(name):获得文件大小,如果name是目录返回0L

14、os.path.splitext():分离文件名与扩展名

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

15、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'
>>> 

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

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

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

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

II

os.error 
内建OSError exception的别名。 


os.name 
导入依赖操作系统模块的名字。下面是目前被注册的名字:'posix', 'nt', 'mac', 'os2', 'ce', 'java', 'riscos'. 


下面的function和data项是和当前的进程和用户有关 

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


os.environ 
一个mapping对象表示环境。例如,environ['HOME'] ,表示的你自己home文件夹的路径(某些平台支持,windows不支持) 
,它与C中的getenv("HOME")一致。 


这个mapping对象在os模块第一次导入时被创建,一般在python启动时,作为site.py处理过程的一部分。在这一次之后改变environment不 
影响os.environ,除非直接修改os.environ. 


注:putenv()不会直接改变os.environ,所以最好是修改os.environ 


注:在一些平台上,包括FreeBSD和Mac OS X,修改environ会导致内存泄露。参考 putenv()的系统文档。 


如果没有提供putenv(),mapping的修改版本传递给合适的创建过程函数,将导致子过程使用一个修改的environment。 


如果这个平台支持unsetenv()函数,你可以删除mapping中的项目。当从os.environ使用pop()或clear()删除一个项目时,unsetenv()会自动被调用(版本2.6)。 


os.chdir(path) 
os.fchdir(fd) 
os.getcwd() 
这些函数在 Files和 Directories中。 


os.ctermid() 
返回进程控制终端的文件名。在unix中有效,请查看相关文档.。 
os.getegid() 
返回当前进程有效的group的id。对应于当前进程的可执行文件的"set id "的bit位。在unix中有效,请查看相关文档.。 
os.geteuid() 
返回当前进程有效的user的id。在unix中有效,请查看相关文档.。 
os.getgid() 
返回当前进程当前group的id。在unix中有效,请查看相关文档.。 
os.getgroups() 
返回当前进程支持的groups的id列表。在unix中有效,请查看相关文档.。 
os.getlogin() 
返回进程控制终端登陆用户的名字。在大多情况下它比使用environment变量LOGNAME来得到用户名,或使用pwd.getpwuid(os.getuid())[0] 得到当前有效用户id的登陆名更为有效。在unix中有效,请查看相关文档.。 

os.getpgid(pid) 
返回pid进程的group id.如果pid为0,返回当前进程的group id。在unix中有效,请查看相关文档.。 

os.getpgrp() 
返回当前进程组的id.在unix中有效,请查看相关文档.。 

os.getpid() 
返回当前进程的id.在unix,Windows中有效。 

os.getppid() 
返回当前父进程的id.在unix中有效,请查看相关文档.。 
os.getuid() 
返回当前当前进程用户的id.在unix中有效,请查看相关文档.。 
os.getenv(varname[, value]) 
返回environment变量varname的值,如果value不存在,默认为None.在大多版本的unix,Windows中有效。 

os.pipe() 
创建一个管道. 返回一对文件描述符(r, w) 分别为读和写. 在unix,Windows中有效。 
os.read(fd, n) 
从文件描述符 fd中读取最多n个字节. 返回包含读取字节的string. 文件描述符 fd对应文件已达到结尾, 返回一个空string. 在unix,Windows中有效。 


转载于:https://blog.csdn.net/lygzscnt12/article/details/52470017

猜你喜欢

转载自www.cnblogs.com/ssxsy/p/9034689.html