python3_文件的IO流

文件 I/O

一. 文件的分类

广义上说文件是按照文件的类型进行分类:
如视频文件、音频文件、图片文件、文档文件等 等各种形式的文件,在这样的分类情况下~很明确使用对应的软件打开对应的文件。
视频文件:视频播放器 音频文件:网易云音乐…
图片文件:画图、照片… 文档文件:word 文档,记事本,wps 软件
表格文件:excel,wps 表格软件

狭义上的文件是按照组成文件的数据格式分类:
文本文件
二进制文件

文本文件:数据是按照字符组成的文件,使用记事本可以正常打开
二进制文件:数据是按照字节组成的文件,使用记事本打开会出现乱码 图片文件、音频文件、视频文件、word 文档

二. 文件读写操作

1.文件 IO

在这里插入图片描述

2. open()函数

在这里插入图片描述

3、 文本文件读写

在这里插入图片描述
在这里插入图片描述

4、 二进制文件读写*

在这里插入图片描述
在这里插入图片描述
二进制文件和文本文件不同,不需要 encoding 编码

5、 复制-粘贴案例

"""
    作者:饶家兴
    时间:2020.2.24
    
    内容:文件的复制
"""

import os, time

"""文件复制函数"""
def copy(file1, file2):
    
    # 读取被复制文件1
    with open(file1, "rb") as f1:

        # 记录1下当前读取文件的大小
        target_src = os.path.getsize(file1)

        print(f"您要复制的文件为{file1},大小为{target_src/1024/1024}k")

        # 声明一个写入的速度
        buffer = 1024*1024

        # 写入要复制的文件
        with open(file2, "wb") as f2:
            
            while True:

                # 读取1次
                content = f1.read(buffer)
                # 读到结尾为b''时,文件读取完成
                if content == b'':
                    print("复制完成,即将退出")
                    break

                # 写入一次
                f2.write(content)
                current_src = os.path.getsize(file2)
                percent = (current_src/target_src)*100

                print(f"当前复制文件的进度为{percent:5.3}%")  # 5.3:5为宽度,3为小数点位数



copy("D:/Note/Python全笔记/Python第一阶段/day11/被复制的文件/01-动态代理和cglib代理.mp4"
, "D:/Note/Python全笔记/Python第一阶段/day11/复制到的文件/123.mp4")

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值