Python中os模块的常用方法和示例

Python中os模块的常用方法和示例

视频教程地址:【2024毕设系列】Anaconda和Pycharm如何使用_哔哩哔哩

在Python中,os模块提供了许多与操作系统交互的函数,用于文件和目录管理、路径操作、环境变量等。以下是os模块中常用的一些方法和示例:

1. 路径操作

  • os.path.join(): 连接多个路径名组件。
  • os.path.abspath(): 返回指定路径的绝对版本。
  • os.path.basename(): 返回指定路径的基本文件名。
  • os.path.dirname(): 返回指定路径的目录名。
  • os.path.exists(): 检查路径是否存在。
  • os.path.isfile(): 检查路径是否为文件。
  • os.path.isdir(): 检查路径是否为目录。

示例:

python 复制代码
import os

path = os.path.join('/home', 'user', 'documents', 'file.txt')
print(path)  # 输出: /home/user/documents/file.txt

abspath = os.path.abspath(path)
print(abspath)  # 输出绝对路径

filename = os.path.basename(path)
print(filename)  # 输出: file.txt

dirname = os.path.dirname(path)
print(dirname)  # 输出: /home/user/documents

exists = os.path.exists(path)
print(exists)  # 如果路径存在则输出True,否则输出False

isfile = os.path.isfile(path)
print(isfile)  # 如果路径是文件则输出True,否则输出False

isdir = os.path.isdir(dirname)
print(isdir)  # 如果路径是目录则输出True,否则输出False

2. 文件和目录管理

  • os.mkdir(): 创建一个目录。
  • os.makedirs(): 递归创建目录。
  • os.rmdir(): 删除一个空目录。
  • os.removedirs(): 递归删除空目录。
  • os.remove() 或 os.unlink(): 删除一个文件。
  • os.rename(): 重命名文件或目录。

示例:

python 复制代码
import os

# 创建目录
os.mkdir('test_dir')

# 递归创建多层目录
os.makedirs('test_dir/sub_dir/sub_sub_dir')

# 删除空目录
os.rmdir('test_dir/sub_dir/sub_sub_dir')

# 删除文件(假设存在一个文件test.txt)
os.remove('test.txt')

# 重命名文件或目录(假设存在一个文件oldname.txt)
os.rename('oldname.txt', 'newname.txt')

3. 环境变量和进程管理

  • os.environ: 一个表示环境变量的字典。
  • os.getenv(): 获取环境变量的值。
  • os.putenv(): 设置环境变量的值(注意:此函数在某些平台上不可用)。
  • os.system(): 运行shell命令。

示例:

python 复制代码
import os

# 获取环境变量
path_var = os.getenv('PATH')
print(path_var)  # 输出环境变量PATH的值

# 设置环境变量(平台相关,可能不起作用)
os.putenv('TEST_VAR', 'test_value')

# 运行shell命令(例如列出当前目录的内容)
os.system('ls')

4. 其他常用功能

  • os.getcwd(): 返回当前工作目录。
  • os.chdir(): 改变当前工作目录。
  • os.listdir(): 列出指定目录下的所有文件和子目录。
  • os.urandom(): 生成指定长度的随机字节串。

示例:

python 复制代码
import os

# 获取当前工作目录
cwd = os.getcwd()
print(cwd)  # 输出当前工作目录的路径

# 改变当前工作目录(假设目标目录存在)
os.chdir('/path/to/directory')

# 列出当前目录下的所有文件和子目录
files = os.listdir('.')
print(files)  # 输出当前目录下的文件和子目录列表

# 生成随机字节串(例如生成16个字节的随机数据)
random_bytes = os.urandom(16)
print(random_bytes)  # 输出随机字节串(二进制数据)
相关推荐
huaqianzkh2 小时前
WinForm C#:循环修改控件UI闪烁卡顿?SuspendLayout / ResumeLayout 与 BeginUpdate 优化
开发语言·ui·c#
沐晓时光12 小时前
C语言入门,内存函数知识讲解
c语言·开发语言
用户9562562542916 小时前
跟做:Firecrawl 单页转 Markdown 再丢进沙箱总结
python·api
威哥爱编程16 小时前
模拟面试智能体开发实战 02:回答等半分钟,谁还愿意练?把服务端和流式输出搭起来
python·agent·harmonyos
威哥爱编程16 小时前
模拟面试智能体开发实战 01:面试挂了都不知道挂在哪?用 Python 给自己造一个随叫随到的 AI 面试官
python·agent·harmonyos
2601_9679801117 小时前
Python行情API量化 02:顺序拉 20 要 2 秒?并发批量把时间压到 0.5 秒
python·api·限流·并发·量化
伞伞悦读17 小时前
【第81期】特征缩放怎么选:标准化、MinMax 与 Robust 的原理、泄漏对照和完整实验
人工智能·python·深度学习·机器学习
新*17 小时前
从一段 WebSocket 代码聊开:bytes 不是 zlib、binaryType 决定一切,15MB 大消息的零拷贝优化
javascript·python·websocket·性能优化·blob·zlib·arraybuffer
David猪大卫18 小时前
【C++修炼】map 和 set 的使用
c语言·开发语言·数据结构·c++·经验分享·笔记·学习
卷无止境19 小时前
mathmodel-figure-templates 以及两个上手案例
后端·python