Python内置OS模块用法详解

python的os模块详解 print(os.path.basename(r'D:\临时\python试验\pandas'))图3 os.path.basename注意,若传入的路径为文件,如 r'D:\临时\python试验\pandas\test.txt',返回的结果是文件名 test.txt。 阅读详情

作者:是甜甜呢

来源:早起Python


Python内置OS模块用法详解

大家好,今天带来的是Python内置OS模块的详细用法,本文目录如下

目录操作

创建目录

mkdir() 方法用于以数字权限模式当前目录下创建目录。默认的模式为 0777 (八进制),语法格式如下

os.mkdir(path[, mode])
  • path – 要创建的目录

  • mode – 要为目录设置的权限数字模式

    

makedirs() 方法用于递归创建目录。可以创建多个目录,其中exist_ok为False,表示目录存在抛出异常。语法格式如下

os.makedirs(path, mode=0o777)
  • path – 需要递归创建的目录。

  • mode – 权限模式。

示例代码

import os
os.mkdir("..\\test_dir")  # 创建目录上一级目录
# 判断是否创建成功
print(os.path.isdir("..\\test_dir"))  # True

os.makedirs("test_dirs\\test_dir")  # 递归创建目录
print(os.path.isdir("test_dirs\\test_dir"))  # True

os.makedirs("Y:/02test/Python/02 进阶部分")
print(os.path.isdir("Y:/02test/Python/02 进阶部分"))  # True

删除目录

rmdir() 方法用于删除指定路径的目录。仅当这文件夹是空的才可以, 否则, 抛出OSError。语法格式如下

os.rmdir(path)

path – 要删除的目录路径

removedirs() 方法用于递归删除目录。注意如果目录不为空,会抛出OSError:[Errno 66] Directory not empty.语法格式为

os.removedirs(path)

示例代码

import os
os.rmdir("..\\test_dir")  # 删除目录
# 判断是否删除成功
print(os.path.isdir("..\\test_dir"))  # False  目录不存在表示以删除

os.removedirs("test_dirs\\test_dir")  # 递归删除目录
print(os.path.isdir("test_dirs\\test_dir"))  # False

os.removedirs("Y:/02test/Python/02 进阶部分")
print(os.path.isdir("Y:/02test/Python/02 进阶部分"))  # False

重命名目录

rename() 方法用于命名文件或目录,从 src 到 dst,如果dst是一个存在的目录, 将抛出OSError。

os.rename(src, dst)

src – 要修改的目录名

dst – 修改后的目录名

renames() 方法用于递归重命名目录或文件。类似rename()。

os.renames(old, new)

示例代码

import os
os.rename("..\\test_dir", "..\\test_dir1")  # 创建目录上一级目录
print(os.path.isdir("..\\test_dir"))  # False
print(os.path.isdir("..\\test_dir1"))  # True

os.renames("test_dirs\\test_dir", "test_dirs\\test_dir1")  # 递归创建目录
print(os.path.isdir("test_dirs\\test_dir"))  # False
print(os.path.isdir("test_dirs\\test_dir1"))  # True

os.renames("Y:/02test/Python/02 进阶部分", "Y:/02test/Python/02进阶部分")
print(os.path.isdir("Y:/02test/Python/02 进阶部分"))  # False
print(os.path.isdir("Y:/02test/Python/02进阶部分"))  # True

获取目录

listdir() 方法用于返回指定的文件夹包含的文件或文件夹的名字的列表。只支持在 Unix, Windows 下使用。path为需要列出的目录路径

os.listdir(path)

getcwd() 方法用于返回当前工作目录。

os.getcwd()

chdir() 方法用于改变当前工作目录到指定的路径。

os.chdir(path)

示例代码

import os
dir_list = os.listdir()  # 获取当前文件的路径,返回一个列表
print(dir_list)  # 返回很长很长的列表

getcwd = os.getcwd()  # 获取当前的工作路径
print(getcwd)  # Y:\02test\Python\01 基础部分

os.chdir("..")  # 返回上级目录
getcwd = os.getcwd()  # 获取当前的工作路径
print(getcwd)  # Y:\02test\Python

遍历目录

walk() 方法用于通过在目录树中游走输出在目录中的文件名,向上或者向下。在Unix,Windows中有效。

os.walk(top[, topdown=True[, onerror=None[, followlinks=False]]])

示例代码

import os
list_result = os.walk(".", topdown=True, onerror=None, followlinks=False)  # 获取当前目录 参数可写可不写
for root, dirs, files in list_result:
    print(root)
    print(dirs)
    print(files)

文件操作

os.open() 方法用于打开一个文件,并且设置需要的打开选项,模式参数mode参数是可选的,默认为 0777。

os.open(file, flags[, mode]);

os.write() 方法用于写入字符串到文件描述符 fd 中. 返回实际写入的字符串长度。

os.write(fd, str)

os.lseek() 方法用于设置文件描述符 fd 当前位置为 pos, how 方式修改。

os.lseek(fd, pos, how)

os.read() 方法用于从文件描述符 fd 中读取最多 n 个字节,返回包含读取字节的字符串,文件描述符 fd对应文件已达到结尾, 返回一个空字符串。在Unix,Windows中有效

os.read(fd,n)

os.fsync() 方法强制将文件描述符为fd的文件写入硬盘。Unix、Windows上可用。

os.fsync(fd)

os.close() 方法用于关闭指定的文件描述符 fd。

os.close(fd)

示例代码

"""
-*- coding:uft-8 -*-
author: 小甜
time:2020/5/26
"""
import os
file = os.open("text.txt", os.O_CREAT | os.O_RDWR)  # 打开文件


os.write(file, b"This is test")  # 写入内容

os.fsync(file)  # 将字符串刷新到硬盘上
os.lseek(file, 0, 0)  # 将指针置为0
text = os.read(file, 100)   # 读取文件
print(text)  # b'This is test'
os.close(file)  # 关闭文件

明日学习计划

Python的time时间模块和random随机数模块

甜甜有话说

今天又是收获满满的一天,加油~

python之os模块详解 os模块详解 在看大神们的代码时经常能看到os模块的身影,然后就想着做一下总结,方便以后查看 下图是参考优快云博主“数据分析与统计学之美”,非常感谢博主的图片 下面我们针对每一个详细的介绍一下其用法: (1)os.getcwd() 获取当前的工作路径; >>> import os >>> os.getcwd() 'C:\\Users\\cc' (2)os.listdir(path) 显示当前文件夹下所有文件和目录组成的列表; >>> pat 阅读详情

相关推荐

Qt QWebEngine实战:手把手教你将Vue3/React前端项目嵌入C++桌面程序

本文详细介绍了如何利用Qt的QWebEngine模块将Vue3/React前端项目无缝嵌入C++桌面程序,实现现代前端框架与原生C++的深度整合。通过环境准备、项目架构设计、前端适配、Qt端集成、双向通信建立及性能优化等步骤,开发者可以高效构建兼具Web灵活性和本地系统能力的混合应用。

weixin_28736355的博客 390

Python之os模块用法

本文主要介绍了Python基础中os模块的使用,介绍了主要的操作文件的方法,以及os模块在实际应用需要注意的问题,做了详细地点讲解。用丰富的案例帮助大家更好理解,使用Python编程语言,方便大家更好理解,希望对大家的学习有帮助。 一、os模块概述 Python os模块包含普遍的操作系统功能。 二、os模块的作用 可以处理文件和目录这些我们日常手动需要做的操作。如果你希望你的程序能够与平台无关的话,这个模块是尤为重要的。 三、常用方法 1. os.name 输出字符串指示正在使用的平台。如

Free雅轩的博客 3312

HomeAssistant+HACS实战:5分钟搞定米家设备接入(附HomeKit配置技巧)

本文详细介绍了如何通过HomeAssistant和HACS插件商店快速接入米家设备,并分享HomeKit配置技巧。从HACS安装到米家设备接入,再到HomeKit设备集成,提供一站式智能家居解决方案,帮助用户实现设备统一管理和自动化场景设置。

weixin_29192141的博客 1052

python中os模块的12种用法

它是属于python的标准库,也就是Python自带的库;它常用于处理文件和目录(文件夹)的操作。今天抽空来总结下这个模块的12种用法,方便以后的查询使用。首先我们需要先将OS模块引用出来(import os),才能正常进行下面的各个方法练习。注意事项:若创建多层目录,父目录不存在的话会报错。若该目录已存在也会报错。在目录00里面手动创建一个文件1.txt,尝试删除这个文件。如果把03文件夹中的内容删除,再执行指令就正常,如下图。创建单层目录成功,在左侧可以直观地看到。将旧的文件名重命名为新的文件名。...

HRD的博客 5639

Transformer是什么?看完这篇你就醍醐灌顶

前言 由谷歌团队提出的预训练语言模型BERT近年来正在各大自然语言处理任务中屠榜(话说学者们也挺有意思的,模型名都强行凑个芝麻街的人物名,哈哈哈)。 BERT算法的最重要的部分便是Transformer的概念,它本质上是Transformer的编码器部分。 而Transformer是什么呢?transformer是永远的神,自从transformer使用了抛弃rnncnn的纯attention机制之后,各种基于transformer结构的预训练模型都如雨后春笋般雄起,而transformer中最重要就是使用

fs1341825137的博客 6万+

Vivado 2018.3 SDK烧写bin文件避坑指南:如何解决QSPI模式下的常见错误

本文深入解析了在Vivado 2018.3 SDK中为Zynq FPGA烧写QSPI Flash时遇到的常见问题,特别是启动模式为QSPI时出现的警告与失败。文章从Zynq启动机制入手,提供了修改FSBL代码以强制使用JTAG模式、调整硬件配置等核心解决方案,并分享了实战案例与最佳实践,帮助开发者高效避坑,确保bin文件烧写成功。

arduino9maker的博客 390

Python中OS模块的常见20种用法总结

OS就是 “Operating System” 的缩写,顾名思义,OS模块提供的就是各种 Python 程序与操作系统进行交互的接口。通过使用OS模块,一方面可以方便地与操作系统进行交互,另一方面也可以极大增强代码的可移植性。Python中的OS模块提供了与操作系统进行交互的函数。操作系统属于Python的标准实用程序模块。该模块提供了使用依赖于操作系统的函数的便携式方法。OS模块提供了非常丰富的方法用来处理文件和目录。

qq_42635198的博客 4719

从VASP数据到LAMMPS模拟:手把手教你用DeePMD-kit搭建Cr-Si-Fe合金势函数

本文详细介绍了使用DeePMD-kit从VASP数据构建Cr-Si-Fe合金深度势能模型的全流程,包括数据准备、模型训练、优化及LAMMPS集成。通过实战教程,帮助研究者掌握DeePMD-kit训练技巧,实现高精度分子动力学模拟,提升材料计算效率。

weixin_33737134的博客 525

Python基础学习之 os 模块详解

Python基础学习之 os 模块详解 文章目录Python基础学习之 os 模块详解1. 路径操作1.1 os.chdir(),切换当前工作目录;1.2 os.getcwd(),返回工作目录路径;1.3 os.mkdir() & os.makedirs(),创建目录;1.4 os.rmdir() & os.rmdirs(),删除目录;1.5 os.listdir(path=...) ,返回指定文件夹下所有的文件和文件夹1.6 os.walk(path=...) ,遍历目录,返回一个元组 (

weixin_47139649的博客 7000

ROS 之 使用yocs_velocity_smoother对机器人速度进行限制

yocs_velocity_smoother是一个速度、加速度限制器,用来防止robot navigation的速度/转速过快,加速度/快减速过大。Bound incoming velocity messages according to robot velocity and acceleration limits. The velocity smoother nodelet runs together with the kobuki_node to apply robot’s velocity and .

https://shixuebin.gitee.io/hexo-blog/ 2623

自动识别象棋棋子的OpenCV应用

在计算机视觉领域,OpenCV是一个广泛应用的开源计算机视觉库,它提供了丰富的图像处理和分析工具。本文将介绍如何使用OpenCV实现自动识别象棋棋子的功能,并提供相应的源代码。通过以上代码,我们可以实现对棋盘图像中棋子的自动识别。需要注意的是,以上代码只是一个简单的示例,实际应用中可能需要根据具体情况进行参数调整和算法优化,以获得更好的识别效果。函数利用预处理后的图像,寻找图像中的轮廓,并根据轮廓的面积筛选出可能的棋子轮廓,最后在原图像中提取棋子区域。在主程序中,我们读取输入图像,并调用。

WzisTypescript的博客 908

玩转 Python 的“钥匙圈”——详解 os 模块的终极用法指南!

本文系统梳理了 Python 中 `os` 模块的常用功能,按模块简介、路径处理、文件与目录操作、系统交互等维度展开,并通过丰富示例讲解如路径拼接、文件判断、目录遍历、系统命令执行等实用方法,同时结合两个小项目展示其实际应用,帮助初学者快速掌握 `os` 模块的核心用法与编程思路。

xiao_Z 的博客 1476

Android Audio录音——AudioRecord回声消除(九)

在语音通话或录音场景中,回声(Acoustic Echo)通常是指说话的声音从对方的扬声器播放出来,又被对方的麦克风拾取,然后有被传回来,导致我们听到了自己延迟了一段时间的重复声音。

小旭的专栏 1406

python中os模块用法_Python内置OS模块用法详解

大家好,从今天起早起Python将持续更新由小甜同学从初学者的角度学习Python的笔记,其特点就是全文大多由新手易理解的代码与注释及动态演示。刚入门的读者千万不要错过!为了配合Python办公自动化系列文章,本文带来的是偷学Python第二十七天:Python内置OS模块的详细用法,其他内容将在近期更新完毕,本文目录如下目录操作创建目录mkdir() 方法用于以数字权限模式当前目录下创建目录。默...

weixin_39801475的博客 246

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

python中os模块重命名_Python内置OS模块用法详解

大家好,从今天起早起Python将持续更新由小甜同学从初学者的角度学习Python的笔记,其特点就是全文大多由新手易理解的代码与注释及动态演示。刚入门的读者千万不要错过! 为了配合Python办公自动化系列文章,本文带来的是偷学Python第二十七天:Python内置OS模块的详细用法,其他内容将在近期更新完毕,本文目录如下 目录操作创建目录mkdir()方法用于以数字权限模式当前目录下创建目录。...

weixin_39794130的博客 211

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

python内置方法重命名_Python内置OS模块用法详解

点击上方『早起Python』关注并星标第一时间接收最新Python干货! 大家好,从今天起早起Python将持续更新由小甜同学从初学者的角度学习Python的笔记,其特点就是全文大多由新手易理解的代码与注释及动态演示。刚入门的读者千万不要错过! 为了配合Python办公自动化系列文章,本文带来的是偷学Python第二十七天:Python内置OS模块的详细用法,其他内容将在近期更新完毕,本文目录如下...

weixin_39553352的博客 69

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

python os 获取当前xian gu项目名称_Python内置OS模块用法详解

点击上方『早起Python』关注并星标第一时间接收最新Python干货!大家好,从今天起早起Python将持续更新由小甜同学从初学者的角度学习Python的笔记,其特点就是全文大多由新手易理解的代码与注释及动态演示。刚入门的读者千万不要错过!为了配合Python办公自动化系列文章,本文带来的是偷学Python第二十七天:Python内置OS模块的详细用法,其他内容将在近期更新完毕,本文目...

weixin_39637661的博客 129

Python必知必会 os 模块详解

Python必知必会的os模块的操作,使用os模块检查文件是否存在,创建文件,删除文件,查看系统路径和环境变量等一系列和系统进行交互的操作

小鱼干儿的博客 5万+

Python模块:常用内置模块os的文件目录操作

《Python模块:常用内置模块os的文件目录操作》是一篇针对Python开发者的技术教程,重点讲解os模块在文件目录操作中的应用。文章从核心概念出发,介绍了os模块的基本定义、重要性及应用场景,包括数据处理、自动化任务等典型使用场景。技术原理部分详细解析了Python的核心特点和技术架构,并通过代码示例演示了具体实现方法。实践应用章节提供了环境配置指南和基础到进阶的编程示例,如列表操作和面向对象编程。最后,文章总结了常见问题(如环境配置、pip安装、编码错误)及其解决方案,为开发者提供实用参考

未来 95% 的 AI 应用将变得隐形,广泛融入日常生活。 1800

Python教程(十三):常用内置模块详解

这些示例提供了每个模块的多种用法。由于Python的动态特性,这些模块可以用于更复杂的场景和应用。在实际开发中,你可以根据需要选择适合的模块和方法。

前端探索者 3420

python中内置os模块总结

os模块在python中属于内置模块,即不需要额外安装。 os模块提供了非常丰富的方法来处理文件和目录。我这里仅仅是列举其中常用的一些方法以供自己以后方便查阅。 使用os模块之前,先导入它,即: In: import os 输出当前正在使用的平台 In: os.name Out: 'nt' #若是Windows则输出'nt',若是Linux/Unix,则是'posix' ...

aoanng的博客 9840
上一篇: 如何画出漂亮的神经网络图?
下一篇: 数学推导+纯Python实现机器学习算法25:kmeans聚类
机器学习算法那些事
博客等级 码龄9年 1633粉丝 62原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值