os模块下 getcwd()、chidr()、mkdir()、makedirs()、listdir() 等函数用法介绍

简介: os.getcwd()cwd 全称为 Current Working Directory(CWD) ,即为当前工作路径;os.getcwd() 函数返回的就是当前工作路径

os.getcwd()

cwd 全称为 Current Working Directory(CWD) ,即为当前工作路径;os.getcwd() 函数返回的就是当前工作路径


cwd 的作用

Python 调用脚本时需要指定脚本名称,调用时解释器首先会从当前工作路径下进行搜索,如果文件名位于当前文件夹下或配置到环境变量中,则调用成功否则调用失败

>>> import os
>>> os.getcwd()
'D:\\Data\\map_data'

os.chidr(path)

  • path(str),文件夹目录;

改变 当前工作路径path

>>> os.getcwd()
'D:\\Data\\map_data'
>>> os.chdir('../')#返回上一个目录
>>> os.getcwd()
'D:\\Data'

os.mkdir(path)

  • path(str),文件夹目录

创建一个文件夹目录,如果 path 存在则程序报错

>>> os.listdir(os.getcwd())
['map-location.xlsx', 'Map2.gif', 'Map22.gif']
>>> os.mkdir(os.getcwd() + '/make_dir')
>>> os.listdir(os.getcwd())
['make_dir', 'map-location.xlsx', 'Map2.gif', 'Map22.gif']
>>> os.mkdir(os.getcwd() +'/make_dir')
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
FileExistsError: [WinError 183] 当文件已存在时,无法创建该文件。: 'D:\\Data\\map_data/make_dir'

os.makedirs(path)

  • path(str),文件夹目录


递归创建文件夹目录 path,若中间部分文件夹不存在时则自动创建;例如假设我想创建一个 D:/Data/Ceshi/Ceshi1 目录文件夹,而系统中没有 D:/Data/Ceshi 文件夹,则在调用 os.makedirs(path) 函数创建前者时,后者自动创建;

>>> os.listdir(os.getcwd())
['make_dir', 'map-location.xlsx', 'Map2.gif', 'Map22.gif']
>>> os.makedirs(os.getcwd() + '/recu_dir/file_dir')
>>> os.listdir(os.getcwd())
['make_dir', 'map-location.xlsx', 'Map2.gif', 'Map22.gif', 'recu_dir']
>>> os.listdir(os.getcwd() + '/recu_dir')
['file_dir']

os.listdir(path)

  • path(str),一个文件路径;

返回一个列表,列出在目录 path 下的文件目录和文件名(没有加入递归操作);未指定 path 则默认为 当前工作路径

>>> os.listdir()
['make_dir', 'map-location.xlsx', 'Map2.gif', 'Map22.gif', 'recu_dir']
>>> os.listdir(os.getcwd())
['make_dir', 'map-location.xlsx', 'Map2.gif', 'Map22.gif', 'recu_dir']

os.remove(path)

  • path(str),表示一个文件路径;

删除一个文件路径,**注意这个函数不能删除文件夹,如果 path 指定的是文件夹的话会报错 **

>>> os.remove(os.getcwd() +'/make_dir')
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
PermissionError: [WinError 5] 拒绝访问。: 'D:\\Data\\map_data/make_dir'
>>> os.remove(os.getcwd() +'/Map21.gif')
>>> os.listdir()
['make_dir', 'map-location.xlsx', 'Map2.gif', 'Map22.gif', 'recu_dir']

os.rmdir(path)

  • path(str),表示文件夹目录

删除一个文件夹 path ,需要注意的是 文件夹 path 必须为空的,否则报错

>>> os.listdir()
['make_dir', 'map-location.xlsx', 'Map2.gif', 'Map22.gif', 'recu_dir']
>>> os.rmdir(os.getcwd() + '/recu_dir')
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
OSError: [WinError 145] 目录不是空的。: 'D:\\Data\\map_data/recu_dir'
>>> os.rmdir(os.getcwd() +'/make_dir')
>>> os.listdir()
['map-location.xlsx', 'Map2.gif', 'Map22.gif', 'recu_dir']


os.rename(path1,path2)

  • path1(str),未修改之前的文件路径,或文件夹目录;
  • path2(str),准备修改的文件路径;



将原文件 path1 重命名为 path2 ,前提需要保证源文件 path1 存在并且用户有足够权限修改它

>>> os.listdir()
['map-location.xlsx', 'Map22.gif', 'recu_dir']
>>> os.rename(os.getcwd() +'/Map22.gif',os.getcwd() +'/Map123.gif')
>>> os.listdir()
['map-location.xlsx', 'Map123.gif', 'recu_dir']


相关文章
|
1月前
|
Python
Python实用记录(四):os模块-去后缀或者改后缀/指定目录下图片或者子目录图片写入txt/csv
本文介绍了如何使用Python的os模块来操作文件,包括更改文件后缀、分割文件路径和后缀、将指定目录下的所有图片写入txt文档,以及将指定目录下所有子目录中的图片写入csv文档,并为每个子目录分配一个标签。
16 1
|
1月前
|
安全 测试技术 数据库
Python编程--sys模块及OS模块简单用例
Python编程--sys模块及OS模块简单用例
|
2月前
|
Python
python之os模块
python之os模块
|
1月前
|
Shell Python
Python中os模块的常用方法和示例
在Python中,`os`模块提供了与操作系统交互的函数,用于文件和目录管理、路径操作、环境变量等。常用方法包括路径操作(如`os.path.join()`、`os.path.abspath()`)、文件和目录管理(如`os.mkdir()`、`os.remove()`)、环境变量和进程管理(如`os.getenv()`、`os.system()`)以及其他常用功能(如`os.getcwd()`、`os.urandom()`)。
28 0
|
1月前
|
存储 JSON 数据格式
Python 输入输出与文件处理: io、pickle、json、csv、os.path 模块详解
Python 输入输出与文件处理: io、pickle、json、csv、os.path 模块详解
35 0
|
2月前
|
Python
使用 os 模块更高效地读写文件
使用 os 模块更高效地读写文件
16 0
|
2月前
|
移动开发 Unix Linux
30天拿下Python之os模块
30天拿下Python之os模块
30 0
|
2月前
|
存储 程序员 API
【收藏】非API函数检测操作系统类型
【收藏】非API函数检测操作系统类型
|
14天前
|
安全 Linux 数据安全/隐私保护
Vanilla OS:下一代安全 Linux 发行版
【10月更文挑战第30天】
37 0
Vanilla OS:下一代安全 Linux 发行版
|
16天前
|
人工智能 安全 Linux