Python 中的 os 模块

Python 中的 os 模块

在Python中,os 模块是一个内置的标准库,提供了许多与操作系统交互的功能。它允许你执行一系列操作,如文件和目录操作、环境变量管理等。要在Python脚本中使用os模块,你需要首先导入它。

一些常见的用法:

  • 创建和删除目录
  • 改变当前工作目录
  • 文件操作
  • 获取文件和目录列表
  • 环境变量
python 复制代码
# 导入os模块
import os

创建和删除目录

  • 创建一个新目录:
python 复制代码
os.mkdir('new_directory')
  • 如果要创建多级目录,可以使用 os.makedirs()
python 复制代码
os.makedirs('path/new_directory')
  • 删除目录:
python 复制代码
os.rmdir('new_directory')  # 删除目录
os.removedirs('path/new_directory')  # 删除多级目录

改变当前工作目录

  • 获取当前的工作目录:
python 复制代码
current_dir = os.getcwd()
print(current_dir)
  • 改变当前的工作目录:
python 复制代码
os.mkdir('new_directory')
os.chdir('new_directory')
current_dir = os.getcwd()
print(current_dir)

文件操作

  • 重命名文件:
python 复制代码
# 先切换回当前目录
os.chdir('../')
# 文件改名
os.rename('oldname.txt', 'newname.txt')
  • 删除文件:
python 复制代码
os.remove('file_name.txt')

获取文件和目录列表

  • 列出指定目录下的所有文件和子目录:
python 复制代码
for entry in os.listdir('.'):
    print(entry)

环境变量

设置环境变量(只在当前进程中有效):

python 复制代码
os.environ['ENV_VARIABLE_NAME'] = 'value'

获取环境变量:

python 复制代码
value = os.getenv('ENV_VARIABLE_NAME')
value

执行系统命令

  • 格式:os.system('command')
python 复制代码
os.system('ls') 

获取操作系统相关的属性

python 复制代码
print(os.name)

文件和路径操作

python 复制代码
print(os.path.exists('somefile.txt'))  # 判断文件是否存在
print(os.path.isfile('somefile.txt'))  # 判断是否为文件
print(os.path.isdir('somedir'))  # 判断是否为目录
print(os.path.abspath('somefile.txt'))  # 获取绝对路径
print(os.path.join('somedir', 'somefile.txt'))  # 路径连接
print(os.path.basename('somedir/somefile.txt'))  # 获取文件名
print(os.path.dirname('somedir/somefile.txt'))  # 获取目录路径

文件和目录的高级操作

对于更复杂的文件和目录操作,如复制、移动文件等,推荐使用 shutil 模块:

python 复制代码
import shutil
shutil.copyfile('data.db', 'archive.db')  # 复制文件
shutil.move('/build/executables', 'installdir')  # 移动文件 

文件通配符

  • 使用glob模块来查找符合特定规则的文件列表
python 复制代码
import glob
files = glob.glob('*.txt')  # 查找所有.txt文件
files

附件

本文对应的jupyter notebook源码链接,欢迎下载练习:https://download.csdn.net/download/fx_yzjy101/89835492

如有问题请留言。

相关推荐
真心喜欢你吖几秒前
统信操作系统UOS部署安装OpenClaw+飞书接入完整教程(国产大模型配置)
人工智能·python·语言模型·大模型·openclaw·小龙虾
咚咚王者5 分钟前
人工智能之知识处理 知识推理 第三章 图神经网络与知识推理:让图谱“活”起来
人工智能·深度学习·神经网络
用户8356290780518 分钟前
使用 Python 自动生成 Excel 柱状图的完整指南
后端·python
xcbrand9 分钟前
口碑好的品牌策划厂家
大数据·人工智能·python
用户20187928316710 分钟前
故事:“魔法背包”—— /context 命令
人工智能
苹果二14 分钟前
工业软件快问快答
人工智能·数据分析·mbse·系统工程·工业软件
spider'15 分钟前
Ollama更改安装路径
人工智能
ZHOU_WUYI16 分钟前
ppo算法简单实现
人工智能·pytorch·算法
liu****20 分钟前
LangChain-AI应用开发框架(七)
人工智能·python·langchain·大模型应用·本地部署大模型
hhcgchpspk23 分钟前
网速上传下载流量监测工具尝试
网络·python·cmd·psutil