2-shutil模块

作者: 撸撸很乖张 | 来源:发表于2018-10-02 16:34 被阅读0次

shutil模块主要是对文件的高级操作,以及压缩文件等的操作,我们下来先来看该模块的主要方法,以及

该模块的详细的信息介绍,见操作的代码:

import shutil

print dir(shutil)
print type(help(shutil))

下面我们详细的来看shutil模块的常用的方法,以及依据具体的案例,来进行操作,我们先来看把文件内容复制到另外一个文件,实现文件内容的复制,具体就是我们把config文件夹下的config.ini文件内容复制到log文件夹下的log.md,见实现的代码:

import shutil
import  os

#实现读取一个文件内容然后复制到另外一个文件
if os.path.exists(os.path.join(os.path.dirname(__file__),'log','log.md')):
    shutil.copyfileobj(open(os.path.join(os.path.dirname(__file__),'config','config.ini'),'r'),
                       open(os.path.join(os.path.dirname(__file__),'log','log.md'),'w'))

执行代码之后,就会实现文件内容的复制。下来我们来实现copy文件,就是把config文件夹下的config.ini文件copy到log的文件夹,见实现的代码:

import shutil
import  os

#实现读取一个文件内容然后复制到另外一个文件
if os.path.exists(os.path.join(os.path.dirname(__file__),'log','config.ini')):
    print u'config.ini文件已存在log文件夹目录,不需要copy'
else:
    shutil.copyfile(os.path.join(os.path.dirname(__file__),'config','config.ini'),
                    os.path.join(os.path.dirname(__file__),'log','config.ini'))

注释:实现把一个文件从一个目录复制到另外一个文件,也包含了文件内容的,也就是说,copy到新的目录下的文件内容和之前的文件内容一致。其他常用的方法见如下的代码:

import shutil
import  os

#拷贝文件和权限
shutil.copy('db.ini','c:/log.db')

#仅拷贝权限,内容,组,用户均不会变,不会拷贝文件内容
shutil.copymode('db.ini','')


#拷贝状态的信息,包括:moded bits,atime,mtime,flags
shutil.copystat()

#拷贝文件和状态信息
shutil.copy2()

#拷贝文件夹
shutil.copytree('folder1','folder2',ignore=shutil.ignore_patterns('*.py'))

#递归删除文件
shutil.rmtree()

#重命名文件
shutil.move()

见创建压缩包的程序,见实现的代码:

import shutil
import  os

#创建文件压缩包并返回路径
shutil.make_archive('filename','gztar',root_dir=os.path.dirname(__file__))

相关文章

  • 2-shutil模块

    shutil模块主要是对文件的高级操作,以及压缩文件等的操作,我们下来先来看该模块的主要方法,以及 该模块的详细的...

  • python常用模块!!

    os模块: stat模块: sys模块: hashlib,md5模块: random模块: types模块: at...

  • 2018-08-19

    Angular 2 技能图谱 模块 自定义模块 根模块 特性模块 共享模块 核心模块 内置模块 Applicati...

  • 【时间管理100讲】精髓全在这里啦

    理论模块 精力管理。 行动管理。 学习模块。 高空模块。 反思模块。 运动模块。 阅读模块。 旅行模块。 人际关系...

  • python基础学习(三)

    常用模块 String模块 数学模块 随机模块 OS模块 os.path模块 re模块 常用函数及操作 列表操作 ...

  • day10-异常处理和pygame显示

    一、异常处理 1.模块 导入模块(自定义模块,第三方模块)import 模块 ---->模块.内容from 模块 ...

  • 重点知识复习(异常处理)

    1.模块 导入模块(自定义模块,第三方模块,系统其他模块)import 模块 ----> 模块.内容from 模...

  • Python常用模块

    Python常用模块之time模块 Python常用模块之os模块 Python常用模块之sys模块 Python...

  • nodejs-模块

    nodejs模块 一、nodejs模块分类 1.核心模块 Core Module、内置模块、原生模块 fs模块 p...

  • Python不同网络模块网页源代码的获取

    requests模块 或者使用 selenium模块 BeautifulSoup模块 urllib模块

网友评论

    本文标题:2-shutil模块

    本文链接:https://www.haomeiwen.com/subject/qxkaoftx.html