欧易

欧易(OKX)

国内用户最喜爱的合约交易所

火币

火币(HTX )

全球知名的比特币交易所

币安

币安(Binance)

全球用户最多的交易所

PythonOS模块简介

时间:2022-10-09 17:48:18 | 浏览:280

在本教程中,我们将学习怎样使用Python中的os模块。目录表简介基本函数列出当前工作目录的文件/目录改变工作目录创建单个和嵌套目录结构递归删除单个和嵌套目录结构数据处理实例结论简介Python是近年来用于数据处理、数据分析和网站构建等各种

在本教程中,我们将学习怎样使用Python中的os模块。

目录表

  1. 简介

  2. 基本函数

  3. 列出当前工作目录的文件/目录

  4. 改变工作目录

  5. 创建单个和嵌套目录结构

  6. 递归删除单个和嵌套目录结构

  7. 数据处理实例

  8. 结论

简介

Python是近年来用于数据处理、数据分析和网站构建等各种任务的最常用语言之一。在处理这些任务的过程中,有许多任务依赖于操作系统。Python允许开发人员通过Python中的os模块使用多个依赖于操作系统的功能。这个包抽象了平台的功能,并提供了相关python函数来导航、创建、删除和修改文件和文件夹。在本教程中,你将了解如何导入这个包、它的基本功能以及使用这个库执行数据合并任务的python示例项目。

基本函数

我们通过一些实例代码来学习一下这个模块。

导入库:

我们来获取本模块可以使用的方法列表:

输出:

现在,使用getcwd方法我们可以获取当前工作目录路径。

输出:

列出文件夹和文件

我们使用 listdir 来列出当前目录的文件夹/文件:

输出:

如你所看到的,我有两个文件夹: Data 和 Population_Data ,三个文件: README.md markdown 文件, 以及两个名为 tutorial.pytutorial_v2.py的Python文件。

为了获取我的项目文件夹的树形结构,我们来写一个函数,使用 os.walk 来迭代当前目录下每个文件夹中的所有文件。

在当前工作路径中调用这个函数,当前路径可以通过之前学习的函数得到:

输出:

备注:为方便起见,只截取输出一部分。

从输出中可以看到,文件夹的名称以一个 / 结尾,文件夹中的文件向右缩进了四个空格。Data 文件夹中有一个名为 uscitiesv1.4.csv 的csv文件。这个文件包含了美国每个城市的人口数据。Population_Data 文件夹保存所有州的数据,其中包含从 uscitiesv1.4.csv 中提取的每个州的人口数据的独立csv文件。

改变工作目录

我们来改变工作目录,进入到包含 “New York”州数据的目录。

现在,我们在这个目录中再次运行 list_files 方法。

输出:

如你所见,我们进入了 Population_Data 文件夹下的 New York 文件夹。

创建单个和嵌套目录结构

现在,我们在这个目录中创建一个名为 testdir 的新目录。

输出:

如你所见,它在当前工作目录中创建了一个新目录。

我们来创建一个两层嵌套的目录。

输出:

我们得到一个错误。具体来说,我们得到一个 FileNotFoundError 错误。你可能想知道,当我们试图创建目录时,为什么会产生一个 FileNotFound 错误。

原因:Python模块寻找一个名为 level1dir 的目录来创建 level2dir 目录。因为 level1dir 不存在,所以它首先抛出一个 FileNotFoundError错误。

对于这样的目的,我们可以使用 mkdirs 函数来代替,它可以递归地创建多个目录。

查看当前目录树。

输出:

可以看到,现在在 New York 文件夹下有两个子目录:testdir 和 level1dir。level1dir下面有一个名为level2dir 的目录。

递归删除单个和多层目录

os 模块也有修改或删除目录的方法,我将在这里演示。

现在,让我们来使用 rmdir 删除刚才创建的目录:

查看当前目录树来确认此目录已经不存在:

输出:

你可以看到,testdir 目录已经被删除。

我们来尝试删除嵌套目录树 level1dir 和 level2dir。

输出:

正如所见,这里抛出了一个 OSError,这是正确的。它提示 level1dir 目录不是空的。这是正确的,因为它下面有 level2dir。

使用 rmdir 方法不可能删除非空目录,类似于Unix命令行版本。

就像 makedirs 方法一样,我们试一下 rmdirs,它可以递归地删除树结构中的目录。

我们再来看一下树结构:

输出:

它返回前一个目录的状态。

数据处理实例

到目前为止,我们已经研究了如何查看、创建和删除嵌套目录结构。现在我们来看一个 os 模块如何帮助数据处理的例子。

为此,我们在目录结构中向上一层。

这一步操作之后,我们再来查看一下目录树结构。

输出:

备注:为了简便起见,只截取输出一部分。

我们通过遍历每个州的目录并合并CSV文件来合并所有州的数据。

由于 os 模块的部分原因,我们能够创建 merge_data,这是一个包含来自每个州的人口数据的数据帧。

结论

在本文中,我们简要地探讨了Python内置 os 模块的不同功能。我们还看到了一个简单的例子,说明如何在数据科学和分析领域中使用该模块。很重要的一点是,要了解 os 还提供了很多的功能,并且可以根据开发人员的需要构建更复杂的逻辑。

英文原文:https://stackabuse.com/introduction-to-python-os-module/
译者:忧郁的红秋裤

相关资讯

零基础学Python:Python五种Python解释器分享给你

不论你是Python新手零基础入门Python还是对于Python有了一定的经验积累,这里跟大家分享5个Python计时器,希望伙伴们有能用得上的!Python是一门解释器语言,代码想运行,必须通过解释器执行,Python存在多种解释器,分

Python之父:Python4.0可能不会来了

机器之心报道编辑:力元、蛋酱2020 年 1 月 1 日,Python 官方结束了对 Python 2 的维护,意味着 Python 2 完全退休,进入 Python 3 时代。之后,关于 Python 4 的发布排期也成为了社区的热门议题

python入门之python简介

一、python了解python 是脚本语言。python 是一种面向对象的解释型计算机程序设计语言。语法简洁清晰,特色之一是强制用空白符作为语句缩进。优点:跨平台、胶水语言、开源免费、丰富的库 。缺点:运行速度慢、代码不能加密、场景、数据

最新的python,整整16个G,附零基础入门Python思维导图

思维导图是整理知识的一种非常有效的手段,这里分享几张 Python 基础学习的思维导图,可以帮助自己巩固下基础,有需要的小伙伴可以加紧时间收藏哦!获取方式:

什么是Python?为什么要学习Python?

第一期计算机等考二级程序设计科目的学习,我们从简单易学的Python开始,今天,就让我们揭开它神秘的面纱!我们先看三组数据:第一组呢是TIOBE指数排行,可以看到我们的Python在今年三月份排在了榜首的位置,相比去年的三月份,Python

Python:是!“用Python的,全是假程序员”!HR:太真实……

都说Python什么都能做,本来我是不信的!直到我在CSDN站内看到了一件真事儿:一位博主贴出了自己10分钟用Python搭建小说网站的全过程!全程只用了2步操作,简直太秀了!!……第一步:爬取小说数据库第二步:用Python的热门框架Dj

封神级Python开发核心知识点笔记!一篇带你学透Python

之前老看Java岗的一个朋友炫耀他的一份Java核心知识点笔记,当时,我内心毫无波澜,只有一点点酸……其实Python开发也有很多知识点,我一直一来就想要一份Python核心知识点笔记来帮助自己查漏补缺,后来想想,既然一直没有找到让我满意的

明年至少令Python提速2倍?Python之父给出爆料

去年 11 月,退休失败的 Python 之父 Guido van Rossum 在推特上宣布,退休生活太无聊,从而加入了微软开发者部门。微软自然支持优秀人才的发展,所以赋予了 Guido van Rossum “自由选择项目”的权利,Gu

Python入门教程:超详细1小时学会Python

小编贴心提醒,本文阅读时间9分钟1.Hello world安装完Python之后,打开IDLE(Python GUI) ,该程序是Python语言解释器,你写的语句能够立即运行。我们写下一句著名的程序语句:并按回车,你就能看到这句被K&R引

想学习Python不知从何学起?一份超详细Python入门资料,干货满满

Python是近年来非常火热的一门编程语言,Python 语言最大的特点就是简单,该特点主要体现在以下 2 个方面:1. Python 语言的语法非常简洁明了,即便是非软件专业的初学者,也很容易上手。2. 和其它编程语言相比,实现同一个功能

python入门基础教学,再不学python就晚了

经过了前一段时间的python学习,那么今天我们来学习一下字典,首先来看一个简单的字典:在python中,字典是一系列键-值对,每个键都与一个值相关联,例如前面的color和age就是键,yelllow和23就是他们分别对应的值对1.访问字

学习Python你一定要知道的知识Python解释器的作用和分类有哪些

之前已经讲解了Python解释器的下载和安装,现在就讲下解释器的作用和分类,在讲解任何Python代码之前我们得先知道解释器概念和作用,因为解释器扮演的角色是非常重要的。一、解释器的作用****作用:运行文件(运行代码)****Python

如何在PythonIDLE中查看Python中turtle库中所有方法及用法

在IDLE中点击help中的Python Docs找到“Python Docs”然后就进入Python文档的界面,在左边找到“搜索”按钮,并点击。找到“搜索”按钮在搜索框中搜索所需要的库名称或者函数名称,就能含有该关键词对应的文件。你会在这

7步搞定Python数据可视化,大牛出品教程,Jupyter、Colab版都有

郭一璞 发自 凹非寺 量子位 报道 | 公众号 QbitAI做图表,谁不会?打开Excel,自动就可以生成各种各样的图表。但你看这些图表呢?结合真实地理数据,展现美国每个县的失业率。全球自然灾害统计,类型、规模、时间,一目了然。甚至还有可爱

分析Python3中的bytes和str类型

从例子可以看出,s是个字符串类型。Python有个内置函数bytes()可以将字符串str类型转换成bytes类型,b实际上是一串01的组合,但为了在ide环境中让我们相对直观的观察,它被表现成了b’xe4xb8xadxe6x96

友情链接

网址导航 SEO域名抢注宝宝起名网妈妈知道币圈华为电脑评测网墨西哥旅游网奔驰迈巴赫汽车网名人名言大全巴马香猪养殖花艺培训网自行车之家泰宁古城资讯网自动售卖机资讯网奇异果水果网麦当劳优惠网广东旅游网暑假旅游攻略网林丹球迷网胡先煦影迷网
python编程教学网-python数据库开发教程、python基础知识入门、python数据库编程入门、python语法基础、python下载安装教程、python下载手机版、python翻译器下载手机版、python翻译器代码、python语言翻译、python基础代码、python编程自学网。
python编程教学网 dadeji.cn ©2022-2028版权所有