北理网课 - Python语言程序设计 - 8.4 os库的使用

版权声明:本文为博主原创文章,转载请留言通知。 https://blog.csdn.net/silent0001/article/details/88916669

一、os库的基本介绍

os库提供通用的、基本的操作系统交互功能

-os库是Python标准库,包含几百个函数

-常用路径操作、进程管理、环境参数等几类

路径操作 os.path子库,处理文件路径及信息
进程管理 启动系统中其他程序
环境参数 获得系统软硬件信息等环境参数

=======================================================================

二、os之路径操作

os.path子库以path为入口,用于操作和处理文件路径。

导入方法:

import os.path

import os.path as op

以上两种都行,op为os.path的别名

---------------------------------------------------------------------------------------------------------------------------

路径操作:

函数 描述
os.path.abspath(path)

返回path在当前系统中的绝对路径

>>> os.path.abspath('新时代中国特色社会主义.txt')
'C:\\Users\\Dr.Jexus\\Desktop\\新时代中国特色社会主义.txt'

os.path.normpath(path)

归一化path的表示形式,统一用\\分割路径

>>> os.path.normpath('C://Users//Dr.Jexus//Documents//Adobe//Premiere Pro//9.0//Profile-Dr.Jexus//Adobe Premiere Pro Prefs')
'C:\\Users\\Dr.Jexus\\Documents\\Adobe\\Premiere Pro\\9.0\\Profile-Dr.Jexus\\Adobe Premiere Pro Prefs'

os.path.relpath(path)

返回当前程序与文件之间的相对路径(relative path)

>>> os.path.relpath('C://Windows//py.exe')
'..\\..\\..\\Windows\\py.exe'

os.path.basename(path)

返回path中最后的文件名称

>>> os.path.basename('E:\Python\1\5.2.2SevenDigitsDrawV2.py')
'Python\x01\x05.2.2SevenDigitsDrawV2.py'

(这里结果与老师教的不一样,我用的版本比较新,后面我会查)

老师教的:

os.path.dirname(path)

返回path中的目录名称

>>> os.path.dirname('E://Python//data.txt')
'E://Python'

os.path.join(patn, *patn)

组合path与paths,返回一个路径字符串

>>> os.path.join('E:\Python', '1\dist\5.2.2SevenDigitsDrawV2.exe')
         
'E:\\Python\\1\\dist\x05.2.2SevenDigitsDrawV2.exe'

os.path.exists(path)

判断path对应文件或目录是否存在,返回True或False;使用这个函数并没有打开或读取文件

>>> os.path.exists('E:\Python\data.txt')
True

>>> os.path.exists('E:\Python\java.png')
False

>>> os.path.exists('E://Python//3//')
False

os.path.isfile(path)

判断path所对应是否为已存在的文件,返回True或者False

>>> os.path.isfile('E:\Python\data.txt')
True
>>> os.path.isfile('E:\Python\java')
False

os.path.isdir(path)

判断path所对应是否为已存在目录,返回True或者False

>>> os.path.isdir('E:\Python\data.txt')
False
>>> os.path.isdir('E:\Python')
True

os.path.geta<access(访问)>time(path)

返回path对应文件或目录上一次的访问时间,时间从1970年一月一日开始,以time库为标准

>>> os.path.getatime('E://Python//1.2.7CalCicrle.py')
1553001067.1092343

os.path.getm<modify(修改)>time(path)

返回path对应文件或目录上一次修改时间,时间从1970年一月一日开始,以time库为标准

>>> os.path.getmtime('E://Python')
1553748712.5113711

os.path.getc<crate(创建)>time(path)

返回path对应文件或目录上一次创建时间,时间从1970年一月一日开始,以time库为标准

>>> os.path.getctime('E://Python')
1543031502.646793

os.path.getsize(path)

返回path对应文件大小,以字节为单位

>>> os.path.getsize('E://Python//7.6.2GovRptWordCloudV1.py')
370

=======================================================================

三、os库之进程管理

进程管理

os.system(command)

-执行程序或命令command

-在Windows系统中,返回值为cmd的调用返回信息

---------------------------------------------------------------------------------------------------------------------------

例1:输入如下代码:

import os
os.system('C:\\Windows\\System32\\calc.exe')#calc.exe为计算机自带的计算器

执行这段程序后,电脑中计算器被打开。老师用的版本比我低,它返回了0表示程序正常输出;但我的3.7.2版本没有输出任何东西。

例2:输入如下代码:

import os
os.system('C:\\Windows\\System32\\mspaint.exe E:\\Python\\wordcloud6')
#mspaint.exe为电脑自带的画图工具,后面加空格,然后再接上要打开的文件,就可以在画图中打开该文件

以上为结果

=======================================================================

四、os库之环境参数

获取或改变系统环境信息

os.chdir(path)

修改当前程序的操作路径,没有返回值

>>> os.chdir('E:')

os.getcwd()

返回程序的当前路径

>>> os.getcwd()
'E:\\'

os.getlogin()

获得当前系统用户登录名称

>>> os.getlogin()
'Dr.Jexus'

os.cpu_count()

获得当前系统CPU数量

>>> os.cpu_count()
4

os.urandom(n)

获得n个字节长度的随机字符串,通常用于加解密运算

>>> os.urandom(6)
b'\xc1T\xb0\xe5<\xbd' 

(以上是我个人分析结果,到现在没什么问题,欢迎批评指正!)

猜你喜欢

转载自blog.csdn.net/silent0001/article/details/88916669
8.4