Python中的交互库-os库
Posted python学习者0
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python中的交互库-os库相关的知识,希望对你有一定的参考价值。
一.介绍
os库是与操作系统相关的库,它提供了通用的基本的操作系统交互功能。os库是Python的标准库之一,它里面包含几百个处理函数,能够处理与操作系统相关的功能,包括路径操作、进程管理、环境参数设置等几类功能。其中路径操作是利用os.path子库,它用于处理文件以及目录的路径,并获得相关的信息;进程管理指启动系统中的其它程序的功能;环境参数指获得系统软硬件信息等环境参数。
当然os库还包含很多其它功能,这里只介绍这三种。
二.使用说明
1.os库的路径操作
os库使用os.path子库来进行路径操作,这个子库以path为入口,用于操作和处理文件的路径,这里的path(入口)指的是目录或包含文件名称的文件的路径。具体使用保留字import,调用import os.path或者import os.path as <别名>。
常用函数如下:
os.path.abspath(path)
返回path在当前文件系统中的绝对路径(path也许是不存在的),例如:
>>> import os
>>> os.path.abspath("/")
\'C:\\\\\'
>>> os.path.abspath("a.txt")
\'C:\\\\Program Files (x86)\\\\Microsoft Visual Studio\\\\Shared\\\\Python36_64\\\\a.txt\'
>>> os.path.abspath("C:/Users/Administrator/Desktop/text.py")
\'C:\\\\Users\\\\Administrator\\\\Desktop\\\\text.py\'
os.path.normpath(path)
将path归一化的表示,统一使用\\分隔路径,只是修改提供的path不会返回绝对路径,
也认为是可以将字符串path中的/和//改为\\,例如:
>>> import os
>>> os.path.normpath("/")
\'\\\\\'
>>> os.path.normpath("a.txt")
\'a.txt\'
>>> os.path.normpath("C://")
\'C:\\\\\'
os.path.relpath(path)
返回当前程序与文件之间的相对路径(文件也许不存在),例如:
>>> import os
>>> os.path.relpath("C:/a.txt")
\'..\\\\..\\\\..\\\\..\\\\a.txt\'
os.path.dirname(path)
返回path中的目录名称(path也许不存在),例如:
>>> import os
>>> os.path.dirname("C:/a.txt")
\'C:/\'
>>> os.path.dirname("a.txt")
\'\'
os.path.basename(path)
返回文件的文件名(path也许不存在),例如:
>>> import os
>>> os.path.basename("C:/a.txt")
\'a.txt\'
os.path.join(path,*paths)
组合path和paths,返回一个路径字符串,例如:
>>> import os
>>> os.path.join("C:/","Python/a.txt")
\'C:/Python/a.txt\'
>>> os.path.join("c:/","Python/a.txt","Python/b.txt")
\'c:/Python/a.txt\\\\Python/b.txt\'
>>> os.path.join("c:/","python","a.txt")
\'c:/python\\\\a.txt\'
>>> os.path.join("c:/","python/","a.txt")
\'c:/python/a.txt\'
os.path.exists(path)
判断path对应文件或目录是否存在,返回True或Fasle,例如:
>>> import os
>>> os.path.exists("C:/python/a.txt")
False
os.path.isfile(path)
判断path所对应的是否是存在的文件,返回True或False,例如:
>>> import os
>>> os.path.isfile("C:/python/a.txt")
False
>>> os.path.isfile("C:/Users")
False
os.path.isdir(path)
判断path所对应的的是否是存在的目录,返回True或False,例如:
>>> import os
>>> os.path.isdir("C:/Users/a.txt")
False
>>> os.path.isdir("C:/python")
False
>>> os.path.isdir("C:/Users")
True
os.path.getatime(path)
返回path对应文件或目录最近一次的访问时间,path不存在则报错,例如:
>>> import os
>>> os.path.getatime("C:/Users/Administrator/Desktop/text.py")
1585729867.9679828
os.path.getmtime(path)
返回path对应文件或目录最近一次的修改时间,path不存在则报错,例如:
>>> import os
>>> os.path.getmtime("C:/Users/Administrator/Desktop/text.py")
1586841541.9545102
os.path.getctime(path)
返回path对应文件或目录的创建时间,path不存在则报错,例如:
>>> import os
>>> os.path.getctime("C:/Users/Administrator/Desktop/text.py")
1585729867.6859667
os.path.getsize(path)
返回path对应文件的大小,以字节为单位,例如:
>>> import os
>>> os.path.getsize("C:/Users/Administrator/Desktop/text.py")
44
返回的三个时间可以使用time.ctime()来转化为易读时间。
2.os库之进程管理
进程管理指的是使用编写的Python程序去调用其他的外部程序。os库提供了一个函数叫system(),它能够执行其他的程序或命令。在Windows操作系统中,当我们调用os.system()函数时,它将返回调用这个函数结果的返回信息。
举个例子:
>>> import os
>>> os.system("C:/Windows/System32/calc.exe") #调用计算器函数
之后会出现如下窗口
如果此时关闭计算器窗口那么会在IDLE中返回0。
当然也可以给调用的程序指定参数,例如打开画图程序msprint.exe,同时给出要打开的文件:
>>> import os
>>> os.system("C:/Windows/System32/mspaint.exe C:/Users/Administrator/Desktop/pywcloud.png")
调用的文件需要在Python根目录下存在(不知道是不是必须),之后出现如下窗口
关闭画图窗口后,IDLE返回0.
3.os库之环境参数
环境参数是指获取或改变操作系统中的环境信息,常用函数如下:
os.chdir(path)
修改当前程序的操作路径,例如:
>>> import os
>>> os.path.abspath("a.txt")
\'C:\\\\Program Files (x86)\\\\Microsoft Visual Studio\\\\Shared\\\\Python36_64\\\\a.txt\'
>>> os.chdir("D:/") #Python小白学习交流群:725638078
>>> os.path.abspath("a.txt")
\'D:\\\\a.txt\'
os.getcwd()
返回程序的当前路径,例如:
>>> import os
>>> os.getcwd()
\'C:\\\\Program Files (x86)\\\\Microsoft Visual Studio\\\\Shared\\\\Python36_64\'
os.getlogin()
获取当前系统登录的用户名,例如:
>>> import os
>>> os.getlogin()
\'Administrator\'
os.cpu_count()
获得当前系统的虚拟CPU数量(核心数),例如:
>>> import os
>>> os.cpu_count()
4
os.urandom(n)
产生n个字节长度的随机字符串,通常用于加解密运算,由于默写字符串不能够被打印出来,所以输出采用16进制表示,例如:
>>> import os
>>> os.urandom(10)
b\'\\xf6yzR\\x0fI\\xd3\\x96\\xee\\x86\'
os库
os库:提供通用的,基本的操作系统交互功能os库是Python标准库,常用路径操作,进程管理,环境参数几类函数
os库基本介绍:
路径操作:os.path子库,处理文件路径及信息
进程管理:启动系统中其他程序
环境参数:获得系统软硬件信息等环境参数
路径操作:os.path子库以path为入口,用于操作和处理文件路径
import os.path
import os.path as op
具体方法:
os.path.abspath(path):返回path目录中的绝对路径
os.path.normalpath(path):归一化path的表示形式,统一用分割路径
os.path.relpath(path):返回当前程序与文件之间的相对路径
os.path.dirname(path):返回path中的目录名称
os.path.basename(path):返回path中最后的文件名称
os.path.join(path,*paths):组合path与paths,返回一个路径字符串
os.path.isdir(path):返回path所对应是否为已存在的目录,返回True或False
os.path.exist(path):返回path对应的文件或目录是否存在,返回True或False
os.path.isfile(path):判断path所对应的是否为已存在文件,返回True或False
os.path.getatime(path):返回path对应文件或目录上一次的访问时间
进程管理:
os.system(command):执行程序或命令command,在windows系统中,返回值为cmd的调用返回信息
环境参数:
os.chdir(path):修改当前程序操作的路径
os.getcwd():返回当前程序的当前路径
os.getlogin():获得当前系统登录用户名称
os.cpu_count():获得当前系统的CPU数量
os.urandom(n):获得n个字节长度的随机字符串,通常用于家解密运算
os.path.getmtime(path):返回path对应文件或目录最近一次的修改时间
os.path.getctime(path):返回path对应文件或目录的创建时间
os.path.getsize(path):返回path对应的文件大小,以字节为单位
以上是关于Python中的交互库-os库的主要内容,如果未能解决你的问题,请参考以下文章