Python中的交互库-os库

这篇具有很好参考价值的文章主要介绍了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")  #调用计算器函数

之后会出现如下窗口

Python中的交互库-os库
如果此时关闭计算器窗口那么会在IDLE中返回0。

当然也可以给调用的程序指定参数,例如打开画图程序msprint.exe,同时给出要打开的文件:

>>> import os
>>> os.system("C:/Windows/System32/mspaint.exe C:/Users/Administrator/Desktop/pywcloud.png")

调用的文件需要在Python根目录下存在(不知道是不是必须),之后出现如下窗口

Python中的交互库-os库
关闭画图窗口后,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进制表示,例如:文章来源地址https://www.toymoban.com/news/detail-438187.html

>>> import os
>>> os.urandom(10)
b'\xf6yzR\x0fI\xd3\x96\xee\x86'

到了这里,关于Python中的交互库-os库的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Python中的交互库-os库

    os库是与操作系统相关的库,它提供了通用的基本的操作系统交互功能。os库是Python的标准库之一,它里面包含几百个处理函数,能够处理与操作系统相关的功能,包括路径操作、进程管理、环境参数设置等几类功能。其中路径操作是利用os.path子库,它用于处理文件以及目录

    2024年02月03日
    浏览(28)
  • 汽车电子笔记之:AUTOSA架构下的多核OS操作系统

    目录 1、AUTOSAR多核操作系统 1.1、OS Application 1.2、多核OS的软件分区 1.3、任务调度 1.4、核间任务同步 1.5、计数器、报警器、调度表 1.6、自旋锁与共享资源 1.7、核间通信IOC 1.8、OS Object中元素交互 1.9、多核OS的启动与关闭 2、多核OS注意事项 2.1、最小部署单元 2.2、核间通信及影

    2024年02月11日
    浏览(29)
  • Linux 操作系统(Cent OS虚拟机)——DHCP的安装与配置

    本次使用的虚拟机是CentOS 64位 的 一、安装DHCP服务器软件 1.配置网络环境 VMware Workstation 软件 上方工具栏选择编辑→虚拟网络编辑器,  自己的电脑上需要先点击“更改设置”,授予权限,如下图,如果没有这个选项则说明已经有权限,跳过这一步到下一步。  如果你的电脑

    2024年02月07日
    浏览(39)
  • 【Java】【OS】操作系统理发店问题通过应用小程序动态实现(1)

    He/she will spend a random time on the chair before send the ready flag to the barber. */ public synchronized void sitBarberChair(BarberShopApplet applet, int id) { while(customerSofaQ[sofaBottom] != id) { System.out.println(\\\"Customer \\\" + id + “is waiting for the chair turn”); try{ wait(); } catch(InterruptedException e) { } } while(chairFull()) { try {

    2024年04月23日
    浏览(33)
  • 【Linux OS】华为openEuler操作系统与openGauss数据库安装及使用入门

    EulerOS 是华为自主研发的服务器操作系统,支持六种处理器架构:x86,Arm,RISC—V,LoongArch,SW64和Power,能够满足客户从传统IT基础设施到云计算服务的需求。 openEuler是EulerOS的开源社区版本。 官网OS镜像下载地址:https://www.openeuler.org/zh/download/ 推荐下载LTS版,当前最新版为:

    2024年02月08日
    浏览(34)
  • 【操作系统OS】学习笔记:第二章 进程与线程 (上)【哈工大李治军老师】

    基于本人观看学习 哈工大李治军老师主讲的操作系统课程 所做的笔记,仅进行交流分享 特此鸣谢李治军老师,操作系统的神作! 如果本篇笔记帮助到了你,还请点赞 关注 支持一下 ♡𖥦)!! 主页专栏有更多,如有疑问欢迎大家指正讨论,共同进步! 给大家跳段街舞感谢支持

    2024年02月02日
    浏览(38)
  • 【华为云】基于华为云欧拉操作系统(HCE OS)容器化部署传统应用(Redis+Postgresql+Git+SpringBoot+Nginx)

    博文内容为 华为云欧拉操作系统入门级开发者认证(HCCDA – Huawei Cloud EulerOS) 实验笔记整理 认证地址:https://edu.huaweicloud.com/certificationindex/developer/9bf91efb086a448ab4331a2f53a4d3a1 博文内容涉及一个传统 Springboot 应用HCE部署, 以及相关数据库 Redis、Postgresql、Nginx 的容器化部署 理解不

    2024年02月22日
    浏览(46)
  • 【小黑嵌入式系统第十课】μC/OS-III概况——实时操作系统的特点、基本概念(内核&任务&中断)、与硬件的关系&实现

    上一课: 【小黑嵌入式系统第九课】PSoC 5LP第一个实验——LED、字符型LCD显示实验 下一课: 【小黑嵌入式系统第十一课】μC/OS-III程序设计基础(一)——任务设计、任务管理(创建基本状态内部任务)、任务调度、系统函数 一. 凡从事嵌入式系统开发工作的人,必须对嵌入

    2024年02月05日
    浏览(37)
  • “Linux免除系统交互操作方法、expect自动化交互工具” 及 “SSH批量修改主机密码脚本”

    案例:为机器磁盘进行分区并实现挂载,免交互式操作,如何实现? 注意:有些命令的交互操作提示是不算在标准输出和错误输出中的,此时该方法不适用 注意:命令的交互操作提示是不算终端窗口的,此时该方法不适用 一. expect 简介 expect 工具是一个根据脚本与其他交互

    2024年02月08日
    浏览(39)
  • C语言与硬件交互:中断处理、低级I/O操作与系统调用(一)

    目录 一、引言 二、中断处理 定义与作用 C语言中的中断处理机制 实例分析 中断处理注意事项 C语言,作为一种兼具底层控制力与较高抽象层次的编程语言,凭借其简洁明了的语法、高效的执行效率以及与硬件资源的紧密联系,在嵌入式系统、操作系统开发、实时控制、设备

    2024年04月14日
    浏览(22)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包