python的os模块

一、官方文档

os --- 多种操作系统接口 — Python 3.10.2 文档https://docs.python.org/zh-cn/3/library/os.html本模块提供了一种使用与操作系统相关的功能的便捷式途径。如果你只是想读写一个文件,请参阅 open(),如果你想操作文件路径,请参阅 os.path 模块,如果你想读取通过命令行给出的所有文件中的所有行,请参阅 fileinput 模块。 为了创建临时文件和目录,请参阅 tempfile 模块,对于高级文件和目录处理,请参阅 shutil 模块。

如果使用无效或无法访问的文件名与路径,或者其他类型正确但操作系统不接受的参数,此模块的所有函数都抛出 OSError (或者它的子类)。

二、根据官方文档进行操作

import os

print(os.name)  # nt , 即Windows NT;目前已注册: 'posix', 'nt', 'java'
# print(os.ctermid())  # 适用Unix,返回与进程控制终端对应的文件名
print(os.environ)  # 返回某些平台的环境变量字典对象,如Jenkins的变量读取
# print(os.environb)  # 环境变量字节对象,python 3.9版本以上才支持
os.chdir("C:/") # 切换文件路径,无返回,相当于 cd 指令
# fd = os.open( "/tmp", os.O_RDONLY )
# os.fchdir(fd)  # 切换文件路径,无返回,相当于cd指令
print(os.getcwd())  # "C:\", 获取当前目录
print(os.fsencode("./myosstudy.py"))  # b'./myosstudy.py', fsencode()方法可以将 路径类 filename 编码为文件系统编码
print(os.fsdecode("./myosstudy.py"))  # ./myosstudy.py,  fsdecode()方法可以将filename从文件系统编码方式解码
print(os.fspath("./myosstudy.py"))  # ./myosstudy.py, 返回路径的文件系统表示
print(os.getenv("path"))  # 如果存在,返回环境变量 key 的值,否则返回 default。 key , default 和返回值均为 str 字符串类型。
# print(os.getenvb("path"))  # 只支持Linux
print(os.get_exec_path()) # os.get_exec_path(), Python中的方法用于获取启动进程时将搜索命名可执行文件的目录列表
# print(os.getegid())  # 适用Unix , 返回当前进程的有效组ID。对应当前进程执行文件的 "set id" 位。
# print(os.geteuid())  # 适用Unix , 返回当前进程的有效用户ID
# print(os.getgid())  # 适用Unix ,返回当前进程的实际组ID。
# print(os.getgroups()) # 适用Unix ,返回当前进程关联的附加组ID列表。
print(os.getlogin())  # 返回通过控制终端进程进行登录的用户名
# print(os.getpgid(pid))  # 适用Unix , 根据进程id pid 返回进程的组 ID 列表。如果 pid 为 0,则返回当前进程的进程组 ID 列表
# os.getpgrp() # # 适用Unix ,返回当时进程组的ID
print(os.getpid()) # 返回当前进程ID
print(os.getppid()) # 返回父进程ID。
# os.getpriority(which, who)  # 适用Unix ,获取程序调度优先级。
# print(os.PRIO_PROCESS)  # 适用Unix, 函数 getpriority() 和 setpriority() 的参数
# os.PRIO_PGRP  # 适用Unix, 函数 getpriority() 和 setpriority() 的参数
# os.PRIO_USER  # 适用Unix, 函数 getpriority() 和 setpriority() 的参数
# print(os.getresuid())  # 适用Unix, 返回一个由 (ruid, euid, suid) 所组成的元组,分别表示当前进程的真实用户ID,有效用户ID和暂存用户ID
# os.getresgid()  # 返回一个由 (rgid, egid, sgid) 所组成的元组,分别表示当前进程的真实组ID,有效组ID和暂存组ID。
# os.getuid() # 返回当前进程的真实用户ID。
# os.initgroups(用户名, gid )  # 调用系统 initgroups(),使用指定用户所在的所有值来初始化组访问列表,包括指定的组ID。
# os.putenv(键,值) # 将名为 key 的环境变量值设置为 value。该变量名修改会影响由 os.system(), popen() ,fork() 和 execv() 发起的子进程。
# os.setegid()  # 设置当前进程的有效组ID。
# os.seteuid() # 设置当前进程的有效组ID。
# os.setgid  # 设置当前进程的组ID
# os.setgroups  # 将 group 参数值设置为与当进程相关联的附加组ID列表。group 参数必须为一个序列,每个元素应为每个组的数字ID。该操作通常只适用于超级用户。
# ...
# print(os.uname())  # 返回当前操作系统的识别信息。返回值是一个有5个属性的对象
# print(os.umask(0))   # 设定当前数值掩码并返回之前的掩码
# os.unsetenv()  # 取消设置(删除)名为 key 的环境变量。
# os.fdopen( fd , * args , ** kwargs )  # 返回打开文件描述符 fd 对应文件的对象。类似内建 open() 函数,二者接受同样的参数。不同之处在于 fdopen() 第一个参数应该为整数。
# os.close( fd )  # 关闭文件描述符 fd。
# os.closerange( fd_low , fd_high ) # 关闭从 fd_low (包括)到 fd_high (排除)间的文件描述符,并忽略错误。
# os.copy_file_range( src , dst , count , offset_src = None , offset_dst = None )  # 从文件描述符 src 复制 count 字节,从偏移量 offset_src 开始读取,到文件描述符 dst,从偏移量 offset_dst 开始写入。
# ... 太多了,只能用到的时候再去查官方文档









三、os的常用方法

方法作用
os.getcwd()
获取当前工作目录
os.chdir(path)
切换目录
os.curdir
返回当前目录
os.pardir
返回父级目录
os.makedirs(path)
递归创建目录
os.removedirs(path)
递归删除空目录,若非空,则停止删除
os.mkdir(path)
创建单目录
os.rmdir(path)
删除单个非空目录
os.listdir()
查看目录内容
os.remove()
删除一个文件
os.rename(old, new)
重命名文件与目录
os.stat(path)
获取文件的信息
os.sep
输出当前系统的分隔符 win下是‘\’,linux下是‘/’
os.linesep
输出当前系统的行终止符
os.pathsep
输出当前系统的路径分隔符
os.system()
执行系统命令
os.name()
返回系统类型
os.environ
返回环境变量
os.path.abspath()
返回绝对路径
os.path.split(path)
把路径跟文件名分开
os.path.dirname()
返回文件的所在的路径
os.path.basename()
返回文件名
os.path.exists()
判断目录是否存在
os.path.isabs()
判断是不是绝对路径
os.path.isdir()
判断目录是否存在
os.path.join()
合并目录

Pythonos模块是一个用于处理文件系统的常用模块。它提供了各种方法来处理文件和目录。在Python中,os模块是跨平台的,这意味着你不需要关心操作系统使用了什么模块os模块会自动选择并调用正确的模块。 通过使用os模块,你可以轻松地获取当前工作目录(即当前Python脚本所在的目录)的路径,使用`os.getcwd()`方法即可实现。 此外,os模块还提供了许多其他有用的方法,例如`os.listdir()`方法可以列出指定路径下的所有文件和目录。你只需要提供一个路径作为参数,比如`os.listdir("C:Users黄伟Desktoppublishos模块 est_os模块")`就可以获取该路径下的所有文件和目录列表。 总结来说,Pythonos模块是一个十分有用的模块,它提供了处理文件系统的功能,包括获取当前工作目录和列出指定路径下的文件和目录等功能。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [Python OS 模块](https://blog.csdn.net/hj1993/article/details/129431726)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* *3* [Python模块——os模块详解](https://blog.csdn.net/qq_46416934/article/details/125241212)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Lion King

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值