返回顶部
首页 > 资讯 > 后端开发 > Python >Python中os模块和shutil模块的示例分析
  • 114
分享到

Python中os模块和shutil模块的示例分析

2023-06-06 17:06:55 114人浏览 泡泡鱼

Python 官方文档:入门教程 => 点击学习

摘要

这篇文章将为大家详细讲解有关python中os模块和shutil模块的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。Python可以做什么Python是一种编程语言,内置了许多有效的工具,Pyth

这篇文章将为大家详细讲解有关python中os模块和shutil模块的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

Python可以做什么

Python是一种编程语言,内置了许多有效的工具,Python几乎无所不能,该语言通俗易懂、容易入门、功能强大,在许多领域中都有广泛的应用,例如最热门的大数据分析人工智能web开发等。

os模块和shutil模块是Python处理文件/目录的主要方式。os模块提供了一种使用操作系统相关功能的便捷方式,shutil模块是一种高级的文件/目录操作工具。

文件的处理

os模块提供了一些便捷功能来使用操作系统资源,比如读取资源目录下的文件、在命令行查看某路径下文件的所有内容等。

获取系统类型


对代码进行兼容性开发以适应不同操作系统时通过操作系统类型进行判断就可以轻松解决。

import osimport sysprint(os.name)  # 返回nt代表windows,posix代表linuxprint(sys.platfORM)  # 更详细信息

Python中os模块和shutil模块的示例分析

获取系统环境


对环境变量进行相关设置时,常常会调用模块environ模块。os.environ是以字典的形式返回系统环境变量,要获取具体的属性值,可以用索引,也可以用方法getenv()

import osprint(os.environ)print(os.environ['PATH'])print(os.getenv('PATH'))

Python中os模块和shutil模块的示例分析

执行系统命令


使用os模块system()方法可以执行shell命令,正常执行会返回0。使用格式是os.system("bash command")

在非控制台编写时,system()只会调用系统命令而不会执行,执行结果可通过popen()函数返回file对象进行读取获得。

import osos.system('ping www.baidu.com')os.popen('ping www.baidu.com').read()

Python中os模块和shutil模块的示例分析

操作目录与文件


使用os模块操作目录和文件时python开发最为常见的功能之一。

方法说明示例
os.getcwd()获取当前目录路径Python中os模块和shutil模块的示例分析
os.chdir('目标路径')更改当前脚本目录Python中os模块和shutil模块的示例分析
os.listdir(path)列举目录下所有文件Python中os模块和shutil模块的示例分析
os.mkdir(path)创建单个目录Python中os模块和shutil模块的示例分析
os.makedirs(path)创建多级目录
os.rmdir(path)删除单级空目录
os.removedirs(path)删除多级目录
os.rename("文件或目录名",”目标名“)重命名目录或文件Python中os模块和shutil模块的示例分析
os.path.abspath()获取绝对路径Python中os模块和shutil模块的示例分析
os.path.split(path)将路径分解为(文件夹,文件名)
若路径字符串最后一个字符是\,则只有文件夹部分有值;
若路径字符串中均无\,则只有文件名部分有值;
若路径字符串有\且不再最后,则文件夹文件名都有值。
Python中os模块和shutil模块的示例分析
os.path.join(path2,path3)将路径组合
os.path.dirname(path)获取path中的文件夹部分Python中os模块和shutil模块的示例分析
os.path.basename(path)获取path中的文件名
os.path.exists(path)判断文件或文件夹是否存在Python中os模块和shutil模块的示例分析
os.path.isfile(path)判断路径是否是一个文件Python中os模块和shutil模块的示例分析
os.path.isdir(path)判断路径是否为一个目录Python中os模块和shutil模块的示例分析
os.path.getsize(path)获取文件或文件夹大小Python中os模块和shutil模块的示例分析
os.path.getctime(path)获取文件或文件夹创建时间Python中os模块和shutil模块的示例分析
os.path.getatime(path)获取文件或文件夹最后访问时间Python中os模块和shutil模块的示例分析
os.path.getmtime(path)获取文件或文件夹最后修改时间Python中os模块和shutil模块的示例分析
os.sep()路径分割符Python中os模块和shutil模块的示例分析
os.extsep()文件名和后缀之间的分割符
os.pathsep()路径分隔符
os.linesep()换行符号

(插播反爬信息 )博主CSDN地址:https://wzlodq.blog.csdn.net/

文件和目录高级处理

相比os模块,shutil模块用于文件和目录的高级处理,提供了支持文件赋值、移动、删除、压缩和解压等功能。

复制文件


shutil模块的主要作用是赋值文件,大概有以下七种实现:

  1. shutil.copyfileobj(file1,file2)覆盖复制
    将file1的内容覆盖file2,file1、file2表示打开的文件对象。

  2. shutil.copyfile(file1,file2)覆盖复制
    也是覆盖,但是无须打开文件,直接用文件名进行覆盖(其源码还是调用的copyfileobj)。

  3. shutil.copymode(file1,file2)权限复制
    仅复制文件权限,不更改文件内容、组和用户,无返回对象。

  4. shutil.copystart(file1,file2)状态复制
    复制文件的所有状态信息,包括权限、组、用户和时间等,无返回对象。

  5. shutil.copy(file1,file2)内容和权限复制
    复制文件的内容和权限,相当于先执行了copyfile再执行了copysmode。

  6. shutil.copy2(file1,file2)内容和权限复制
    复制文件的内容及所有状态信息,相当于先执行了copyfile再执行了copystart。

  7. shutil.copytree()递归复制
    递归地复制文件内容及状态信息

移动文件


使用函数shutil.move()函数可以递归地移动文件或重命名,并返回目标,若目标是现有目录则src再当前目录移动;若目标已经存在且不是目录,则可能会被覆盖。
Python中os模块和shutil模块的示例分析
Python中os模块和shutil模块的示例分析

读取压缩及归档压缩文件


使用函数shutil.make_arcHive()创建归档文件,并返回归档后的名称。
语法如下:
shutil.make_archive(base_name,format[,root_dir[,base_dir[,verbose[,dry_run[,owner[,group[,logger]]]]]]])

  • base_name为需要创建的文件名,包括路径

  • format表示压缩格式,可选zip、tar或bztar等

  • root_dir为归档的目录

import shutilpath_1 = r'D:\PyCharmProjects\Hello'path_2 = r'D:\PycharmProjects\Hello\shutil-test'new_path = shutil.make_archive(path_2,'zip',path_1)print(new_path)

Python中os模块和shutil模块的示例分析

解压文件


使用函数shutil.unpack_archive(filename[,extract_dir[,format]])分析拆档。

  • filename是归档的完整路径

  • extract_dir是解压归档的目标目录名称

  • format是解压文件的格式

import shutilimport osshutil.unpack_archive('D:\PycharmProjects\Hello\shutil-test.zip','D:\\testdir')print(os.listdir('D:\\testdir'))

Python中os模块和shutil模块的示例分析

小结


需要注意的是不同的操作系统中,路径分隔符不一样,在文件处理时需要考虑。也可以使用os.sep()来替代文件分隔符,因为操作系统而造成的程序异常。此外处理文件时往往需要注意文件权限,还有注意文件和文件夹的区别,使用递归等。

关于“Python中os模块和shutil模块的示例分析”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。

--结束END--

本文标题: Python中os模块和shutil模块的示例分析

本文链接: https://lsjlt.com/news/248005.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • Python中os模块和shutil模块的示例分析
    这篇文章将为大家详细讲解有关Python中os模块和shutil模块的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。python可以做什么Python是一种编程语言,内置了许多有效的工具,Pyth...
    99+
    2023-06-06
  • python中OS模块和time模块的示例分析
    这篇文章将为大家详细讲解有关python中OS模块和time模块的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。一、OS模块概述Python OS模块包含普遍的操作系统功能。如果你希望你的程序能够...
    99+
    2023-06-15
  • python中的sys模块和os模块
    目录1.sys模块2.os模块(和操作系统相关数据)1.sys模块 sys模块的常见函数列表: sys.argv: 实现从程序外部向程序传递参数。sys.exit([arg]): 程...
    99+
    2024-04-02
  • 详解Python常用标准库之os模块与shutil模块
    目录系统模块常用方法常用属性文件操作路径模块文件复制移动模块(文件操作)copyfileobj -- 复制文件(内容)copyfile -- 复制文件(内容)copymode -- ...
    99+
    2024-04-02
  • Python中urllib爬虫、request模块和parse模块的示例分析
    小编给大家分享一下Python中urllib爬虫、request模块和parse模块的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!urlliburlli...
    99+
    2023-06-14
  • angular2模块和共享模块的示例分析
    这篇文章主要介绍angular2模块和共享模块的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!创建模块,用到了共享模块PostSharedModule,共享模块里面包含了2个...
    99+
    2024-04-02
  • python模块的示例分析
    小编给大家分享一下python模块的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!Python的优点有哪些1、简单易用,与C/C++、Java、C# 等传...
    99+
    2023-06-14
  • 如何分析Python OS 模块
    这篇文章给大家介绍如何分析Python OS 模块,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。python os模块Python的标准库中的os模块包含普遍的操作系统功能。如果你希望你的程序能够与平台无关的话,这个模...
    99+
    2023-06-04
  • python常见模块之OS模块和time模块
    一、OS模块概述 Python OS模块包含普遍的操作系统功能。如果你希望你的程序能够与平台无关的话,这个模块是尤为重要的。 二、常用方法 三、OS模...
    99+
    2024-04-02
  • python中sys模块的示例分析
    小编给大家分享一下python中sys模块的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!python版本: Python 2.7.61: sys是pyt...
    99+
    2023-06-14
  • python中的sys模块和os模块怎么用
    今天小编给大家分享一下python中的sys模块和os模块怎么用的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。1.sys模块...
    99+
    2023-06-29
  • Python常用标准库之os模块与shutil模块怎么使用
    本文小编为大家详细介绍“Python常用标准库之os模块与shutil模块怎么使用”,内容详细,步骤清晰,细节处理妥当,希望这篇“Python常用标准库之os模块与shutil模块怎么使用”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入...
    99+
    2023-06-30
  • Python模块cachetools的示例分析
    Python模块cachetools的示例分析,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。前言cachetools 是一个 Python 模块,提供各种记忆集合和修饰符,包括...
    99+
    2023-06-02
  • Python 中 Shutil 模块详情
    一、什么是shutil shutil可以简单地理解为sh + util ,shell工具的意思。shutil模块是对os模块的补充,主要针对文件的拷贝、删除、移动、压缩和解压操作。 ...
    99+
    2024-04-02
  • python中os模块和sys模块的使用详解
    目录一、os模块二、os模块中的os.walk()函数三、sys模块一、os模块 os.getcwd() 获取当前的工作目录 os.chdir(‘绝对路径/相对于当前工作...
    99+
    2023-03-21
    python os模块 python sys模块
  • python中os模块和sys模块怎么使用
    今天小编给大家分享一下python中os模块和sys模块怎么使用的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。一、os模块o...
    99+
    2023-07-05
  • Python shutil模块(目录和文
    import shutil #导入shutil模块 copyfileobj方法 将类文件对象fsrc的内容复制到类文件对象fdst shutil.copyfileobj(fsrc, fdst[, length]) 我一般的用法...
    99+
    2023-01-30
    和文 模块 目录
  • Python中包与模块的示例分析
    这篇文章主要为大家展示了“Python中包与模块的示例分析”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Python中包与模块的示例分析”这篇文章吧。什么是 Python 的包与模块包的定义:简...
    99+
    2023-06-29
  • python文件目录操作之os模块的示例分析
    这篇文章将为大家详细讲解有关python文件目录操作之os模块的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。python可以做什么Python是一种编程语言,内置了许多有效的工具,Python几...
    99+
    2023-06-15
  • python os模块和fnmatch模块的使用介绍
    目录一、先介绍一下os模块1、拆分路径的方法介绍2、构建文件路径的方法介绍3、获取文件属性的方法介绍4、判断文件的类型5、文件和目录操作6、修改文件属性和判断文件属性7、遍历目录树二...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作