本文大纲

os模块是Python中整理文件和目录最为常用的模块,该模块提供了非常丰富的方法用来处理文件和目录。本着只讲最有用的态度,下方我将os模块中一些我经常用的的方法,给大家详细列举出来了,希望减少大家的学习负担。

知识串讲

1)模块的安装和导入

# 导入import os1

21

2

2)os.getcwd() 作用:获取当前的工作路径; os.getcwd()11

结果如下:

3)os.listdir(path) 作用:传入任意一个path路径,返回的是该路径下所有文件和目录组成的列表;

path = r'C:\Users\黄伟\Desktop\publish\os模块\test_os模块'os.listdir(path)1

21

2

结果如下:

3)os.walk(path) 含义 :传入任意一个path路径,深层次遍历指定路径下的所有子文件夹,返回的是一个由路径、文件夹列表、文件列表组成的元组。我代码中写的方式属于元组拆包;

元组拆包:就是将一个元组中的每个值,赋值给不同的变量; path = r'C:\Users\黄伟\Desktop\publish\os模块\test_os模块'for path,dirs,files in os.walk(path): print(path) print(dirs) print(files) print('\n')1

2

3

4

5

61

2

3

4

5

6

结果如下:

4)os.path.exists(path) 含义:传入一个path路径,判断指定路径下的目录是否存在。存在返回True,否则返回False;

path1 = 'C:\\Users\\黄伟\\Desktop\\publish\\os模块\\huang_wei'if os.path.exists(path1): print('指定文件夹存在')else: print('指定文件夹不存在')1

2

3

4

5

61

2

3

4

5

6

结果如下:

5)os.mkdir(path) 含义:传入一个path路径,创建单层(单个)文件夹;

注意:如果文件夹已经存在,就会报错。因此创建文件夹之前,需要使用os.path.exists(path)函数判断文件夹是否存在; os.getcwd()path1 = os.getcwd()+'\\huang_wei'os.mkdir(path1)1

2

31

2

3

结果如下:

6)os.makedirs(path) 含义:传入一个path路径,生成一个递归的文件夹;

注意:如果文件夹存在,就会报错。因此创建文件夹之前,需要使用os.path.exists(path)函数判断文件夹是否存在;

os.getcwd()path1 = os.getcwd()+'\\huang_wei'os.mkdir(path1)1

2

31

2

3

结果如下:

7)os.rmdir(path) 含义:传入一个path路径,删除指定路径下的文件夹;

注意:该方法只能删除空文件夹,删除非空文件夹会报错; path1 = os.getcwd()+'\\huang_wei'os.rmdir(path1)----------------------------------path2 = os.getcwd()+'\\a\\b\\c'os.rmdir(path2)1

2

3

4

51

2

3

4

5

结果如下:

8)os.path.join(path1,path2) 含义:传入两个path路径,将该路径拼接起来,形成一个新的完整路径;

path = os.getcwd()lis = ['a.jpg','b.jpg','c.jpg']for i in lis: x = os.path.join(path,i) print(x)1

2

3

4

51

2

3

4

5

结果如下:

9)os.path.split(path) 含义:传入一个完整的path路径,将其拆分为绝对路径和文件名2部分; path1 = r'C:\Users\黄伟\Desktop\publish\os模块\a.jpg'os.path.split(path1)1

21

2

结果如下:

10)os.path.dirname(path) 含义:传入一个完整的文件路径,只获取其绝对路径;

path1 = r'C:\Users\黄伟\Desktop\publish\os模块\a.jpg'os.path.dirname(path1)1

21

2

结果如下:

11)os.path.basename(path) 含义:传入一个完整的文件路径,只获取其文件名; path1 = r'C:\Users\黄伟\Desktop\publish\os模块\a.jpg'os.path.basename(path1)1

21

2

结果如下:

12)os.path.isdir(path) 含义:传入一个完整的文件路径,判断它是否是文件夹;

path = os.getcwd()file_list = os.listdir()for file in file_list: if os.path.isdir(file): print(file)1

2

3

4

51

2

3

4

5

结果如下:

13)os.path.isfile(path) 含义:传入一个完整的文件路径,判断它是否是文件; path = os.getcwd()file_list = os.listdir()for file in file_list: if os.path.isfile(file): print(file)1

2

3

4

51

2

3

4

5

结果如下:

14)os.path.sep 含义:返回当前操作系统的路径分隔符;

os.path.sep11

结果如下:

15)os.path.getsize(path) 含义:传入一个完整的文件路径,返回该文件的大小; os.path.getsize('我创建的压缩包.zip')11

结果如下:

python os模块安装方法_Python模块——os模块详解相关推荐

  1. python库的安装方法_Python库的安装方法

    Python库的安装方法 Python的解释器CPython是开源的,我们可以下载查看其源代码,同时,Python语言的各种库也都是开源的.利用Python语言编程,可用的库有很多,在Python官方 ...

  2. python第三方模块安装路径_Python第三方Window模块文件的几种安装方法

    python安装第三方模块 使用软件管理工具pip python自带了包管理工具,就像手机app商城,91助手等软件的功能一样. python2与python3安装模块的方法相似,值得注意的是,你在p ...

  3. python标准库os中的方法_python中OS常用方法

    下面列出了一些在os模块中比较有用的部分.它们中的大多数都简单明了. os.sep可以取代操作系统特定的路径分隔符.windows下为 "\\" os.name字符串指示你正在使用 ...

  4. python语言案例教程 单元测试_python单元测试unittest实例详解

    本文实例讲述了python单元测试unittest用法.分享给大家供大家参考.具体分析如下: 单元测试作为任何语言的开发者都应该是必要的,因为时隔数月后再回来调试自己的复杂程序时,其实也是很崩溃的事情 ...

  5. python数据科学课后答案_Python数据科学-技术详解与商业实践-第五讲作业

    作者:Ben,著有<Python数据科学:技术详解与商业实践>.<用商业案例学R语言数据挖掘>.<胸有成竹-数据分析的SAS EG进阶>作者.2005年进入数据科学 ...

  6. python字符串处理编程实例_Python字符串处理实例详解

    干货大礼包!21天带你轻松学Python(文末领取更多福利) 点击查看课程视频地址 本课程来自于千锋教育在阿里云开发者社区学习中心上线课程<Python入门2020最新大课>,主讲人姜伟. ...

  7. python定时任务每月1号_Python 定时任务框架 APScheduler 详解

    APScheduler 最近想写个任务调度程序,于是研究了下 Python 中的任务调度工具,比较有名的是:Celery,RQ,APScheduler. Celery:非常强大的分布式任务调度框架 R ...

  8. python内置函数教程_Python内置函数详解

    此文参考python文档,然后结合自己的理解,写下来,一方面方便自己,让自己好好学习,顺便回忆回忆:另一方面,让喜欢的盆友也参考一下. 经查询,3.6版本总共有68个内置函数,主要分类如下: 数学运算 ...

  9. 以python程序调用的系统_python 系统调用的实例详解

    python 系统调用的实例详解 本文将通过两种方法对python 系统调用进行讲解,包括python使用CreateProcess函数运行其他程序和ctypes模块的实例, 一 python使用Cr ...

  10. python代码缩进和冒号_Python缩进和冒号详解

    对于Python而言代码缩进是一种语法,Python没有像其他语言一样采用{}或者begin...end分隔代码块,而是采用代码缩进和冒号来区分代码之间的层次. 缩进的空白数量是可变的,但是所有代码块 ...

最新文章

  1. 乱思。。。。。。。、、、、、
  2. 致物理学家的一个实验
  3. python语言百度百科-Python 语言下数据驱动DDT的应用
  4. 树的存储结构-孩子兄弟表示法
  5. 在c语言中char型数据在内存中的储存形式为什么
  6. 我是如何使用git把本地代码上传到github上的,值得借鉴
  7. Java面试题整理二(侧重SSH框架)
  8. 利用mdadm工具构建RAID 0/1/5/6/10磁盘阵列实战(超详细)
  9. 事业编考试计算机专业部分,事业单位考试计算机专业知识汇总-单选题.pdf
  10. datetime.strptime格式转换报错ValueError
  11. liunx服务器数据库文件大小,linux如何查看数据库服务器大小
  12. 杨辉三角 java版
  13. linux socket非阻塞之 send 和sendto函数
  14. Android 原生系统,手机rom下载网站
  15. 跳槽 ,你跳的是工资,还是阶层?
  16. 将RGB颜色转换成16bit颜色
  17. 易语言大漠一键登录实现启动后台绑定游戏
  18. 图像渐变 java_JavaScript图形实例:利用插值实现图像渐变
  19. windows NTFS文件系统手动数据恢复
  20. 二次型x^TAx梯度(求导)推导过程

热门文章

  1. 软件工程师必读技术书籍推荐
  2. 查看jdk的版本以及路径
  3. 蓝宝石rx470d原版bios_AMD又能开核?刷完BIOS后性能白给,这次血赚了
  4. mysql触发器报错_mysql触发器实例:莫名其妙的错误?
  5. “微积分7天搞定”学习记录
  6. android常用代码合集,Android开发常用经典代码段集锦
  7. Hadoop完全分布式集群——Hadoop 配置
  8. hadoop配置流程
  9. 「Java工具类」Apache的FileUtils和IOUtils工具类
  10. 短视频怎么才能做好内容付费?