python os模块示例讲解

2023-11-06

os模块包含普遍的操作系统功能,提供了丰富的方法用来处理文件和目录以及一些系统相关的信息的获取。利用这个模块可以写出与平台无关的程序,比如就是使用os.sep可以取代操作系统特定的路径分割符。

本模块提供一种可移植的方式来使用依赖于操作系统的功能。如果你只想读写文件请参阅open(),如果你想操作文件路径请参阅os.path模块,如果你想读取命令行上所有文件的所有行请参阅fileinput模块。关于创建临时文件和目录请参阅tempfile模块,关于高级的文件和目录处理请参阅shutil模块。

这些函数可用性的注意事项:

Python内建操作系统相关模块的设计是这样的,只要功能相同它就使用相同的接口;例如,函数os.stat(path)以相同的格式(源之于POSIX接口)返回path 的stat信息。
对某个操作系统特有的扩展也可以通过os模块访问,但是使用它们当然不利于移植。
“可用的平台:Unix”的标注表示该函数通常只在Unix系统上能找到。它不是在声明它只存在于某个具体的操作系统上。
如果没有单独地标注,所有声明“可用的平台:Unix”的函数都支持Mac OS X,因为它构建在Unix内核上。

注意:如果文件名和目录非法或不可访问,或者其它的参数类型正确但是操作系统不接受,本模块中的所有函数都将引发OSError。

下面实例讲解一些常用的方法:

0. 查看操作系统相关模块的名字。

目前已经注册的名字:’posix’、’nt’、’os2’、’ce’、’java’、’riscos’。

In [100]: os.name
Out[100]: 'posix'

注意:sys.platform具有更好的粒度。os.uname()给出依赖于系统的版本信息。

In [105]: import sys

In [106]: sys.platform
Out[106]: 'linux2'

In [104]: os.uname()
Out[104]: 
('Linux',
 'foundation3.ilt.example.com',
 '3.10.0-327.el7.x86_64',
 '#1 SMP Thu Oct 29 17:29:29 EDT 2015',
 'x86_64')

0.5 当前用户和环境相关(可用的平台:Unix。)

os.ctermid()

返回进程控制终端对应的文件名。

os.getegid()

返回当前进程有效的组ID。它对应于当前进程中正在执行的文件的“set id”。

os.geteuid()

返回当前进程有效的用户ID。

os.getgid()

返回当前进程真正的组ID。

os.getgroups()

<
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

python os模块示例讲解 的相关文章

随机推荐

  • The Code is successfully generatd...使用stm32cude生成工程时报错

    找了一下午的方法 在此总结 1 路径问题 路径不能包含中文以及空格字符 如E 举例 测试 以及路径不能太深 本人未测试 不是我的情况 2 金山等即时翻译软件未关闭 论坛上看到 本人未测试 3 版本问题 本人测试通过 有的人说是jdk版本太高
  • 2019年底总结

    一年很快 又到改写总结的时候了 回顾这一年 2019年办成了很多的事情 在此借用这句 忆往昔 年少轻狂时 俱远矣 看今日 而立之年始 继拼之 表达下吧 看看2018年的计划 发现大部分自己都在不自不觉中做了 时事 经济领域 用平时的碎片时间
  • C语言快速排序,以及注意点。

    快速排序尤其适用于对大数据的排序 它的高速和高效无愧于 快速 两个字 虽然说它是 最常用 的 可对于初学者而言 用它的人却非常少 因为虽然很快 但它也是逻辑最复杂 最难理解的算法 因为快速排序要用到递归和函数调用 快速排序所采用的思想是分治
  • SpringBoot2.0.5.RELEASE 整合Activiti7启动后不创建表

    环境描述 SpringBoot版本 2 0 5 Activiti版本 7 0 0 Beta3 MySQL版本 8 011 解决办法 在数据库访问的地址上添加配置 nullCatalogMeansCurrent true 问题原因 从mysq
  • java输出相对路径

    在 Java 中 您可以使用 java io File 类来获取文件或目录的相对路径 下面是一个简单的示例 展示了如何使用 File 类获取文件或目录的相对路径 import java io File public class Main p
  • QProgressDialog进度条类

    QProgressDialog 常用API 简单的使用 QProgressDialog类是QDialog的子类 通过这个类我们可以得到一个带进度条的对话框窗口 常用API 构造函数 参数 labelText 对话框中显示的提示信息 canc
  • Centos8安装英伟达显卡驱动并通过docker部署深度学习环境

    20201107 每个人的机器和实际需要的环境都不一样 本文只是提供了在自己实验室centos8上的部署过程 部署过程中 没有什么问题 请谨慎参考本篇文章 以免浪费宝贵时间 0 引言 之前的时候 在实验室的深度学习服务器上安装深度学习的环境
  • NStepSCAN和FSCAN

    NStepSCAN 在最短寻道时间优先 SSTF 扫描算法 SCAN 和循环扫描算法 CSCAN 中 都可能出现磁臂停留在某处不动的情况 例如 有一个或几个进程对某一磁道有较高的访问频率 这些进程反复请求对某一磁道的I O操作 从而垄断了整
  • Git将其他分支合并至主分支

    主要思想 把分支代码合并到master 合给谁 就先切换到谁的分支 1 当前分支是dev 开发完成后 需要合并到master分支 先把该提交的提交 需要push的push完成后 再切换分支 否则也会告诉你要提交本地代码才可以切换分支 2 本
  • 6. JVM调优工具详解及调优实战

    JVM性能调优 1 前置启动程序 1 1 Jmap 1 1 1 Jmap查询内存信息 1 1 2 Jmap查询堆信息 1 1 3 jmap查询堆内存dump 1 2 Jstack 1 3 远程连接jvisualvm 1 4 jstack找出
  • Mongo 数据导出、导入

    1 下载 mongodb database tools windows 2 解压 打开window Powershell 或 doc命令窗口 使用命令进入解压后的文件夹 3 导出数据命令 mongodump exe h 127 0 0 1
  • 2021-06-23 各种经典卷积神经网络总结

    各种经典卷积神经网络总结 1 原始卷积 Vanilla Convolution 2 分组卷积 Group convolution 2 1 组卷积案例1 2 2 组卷积案例2 Resnext 2 3 ShuffleNet 3 转置卷积 Tra
  • 遥感变化检测综述 Change Detection Based on Artificial Intelligence:State-of-the-Art and Change

    遥感变化检测综述 Change Detection Based on Artificial Intelligence State of the Art and Change 现存的变化检测综述主要专注于在多时态高光谱图像 HSIs 和高空间
  • 终极秘密---------windows里藏着9.11的惊天大密码

    终极秘密 windows里藏着9 11的惊天大密码 神秘连锁 密码 泄漏恐怖分子袭美玄机 方法 用WORD 编辑文档输入Q33NY 必须大写 这是9 11撞击世界贸易中心的沙特勇士们乘坐的航班号 第三 将字体大小改到72 最后 将字体转成
  • JS实现简单的购物车

    以下是一个基本的 JS 购物车实现 由于是实现基本的功能 就不弄得多复杂了 代码可以直接Ctrl c v 大家可以试一试 HTML div h2 产品列表 h2 ul li h3 商品1 h3 p 价格 10元 p li ul div
  • SVN 报错:does not support the HTTP/DAV protocol

    原因 我是直接粘贴了上面的网址 而正确做法应该是 点击checkout 复制这个里面的url
  • 图像色彩编码YUV(YCbCr)的基本知识

    参考地址 https www cnblogs com lifan3a articles 4930182 html YUV与YCbCr的定义 YCbCr是DVD 摄像机 数字电视等消费类视频产品中 常用的色彩编码方案 YCbCr 有时会称为
  • No Such Property: Scope For Class: Com.android.build.gradle.internal.variant.ApplicationVariantData

    No Such Property Scope For Class Com android build gradle internal variant ApplicationVariantData 集成360开源的Replugin出现了这个问
  • 软件测试-测试用例的经典例子

    一 等价类划分问 某程序规定 输入三个整数 a b c分别作为三边的边长构成三角形 通过程序判定所构成的三角形的类型 当此三角形为一般三角形 等腰三角形及等边三角形时 分别作计算 用等价类划分方法为该程序进行测试用例设计 三角形问题的复杂之
  • python os模块示例讲解

    os模块包含普遍的操作系统功能 提供了丰富的方法用来处理文件和目录以及一些系统相关的信息的获取 利用这个模块可以写出与平台无关的程序 比如就是使用os sep可以取代操作系统特定的路径分割符 本模块提供一种可移植的方式来使用依赖于操作系统的