Python 文件 IO 操作详解

本文详细介绍了Python中的文件IO操作,包括文件打开模式(如r、w、x、a等)、缓冲区设置、编码处理、错误处理和换行转换。还涵盖了文件的read、write、close等基本命令,文件指针的使用,以及如何利用上下文管理确保文件正确关闭,保护系统资源。
摘要由CSDN通过智能技术生成

1、文件 IO 常用操作

在这里插入图片描述

2、文件打开操作

2.1 打开命令

open(file, mode='r', buffering=-1, encoding=None, errors=None, newline=None, closefd=True, opener=None)
f = open('c:/users/jiao1/test.txt')
print(f)

Out:
<_io.TextIOWrapper name='c:/users/jiao1/test.txt' mode='r' encoding='cp65001'>
# windows 11 Python Jupyter Notebook 环境
# windows 中使用 codepage 代码页,可以认为每一个代码页就是一张编码表
# windows 11 默认使用的编码表是 cp65001
# windows 10 默认使用的编码表是 cp936,等同于 GBK
# Linux 中默认使用的是 utf-8

2.2 命令参数

2.2.1 路径

可以使用绝对路径和相对路径,默认是当前路径。

2.2.2 mode

在这里插入图片描述

  • r 模式

    只读打开文件,如果使用 write 方法,会抛异常
    如果文件不存在,抛出 FileNotFoundError 异常
    
  • w 模式

    表示只写方式打开,如果读取则抛出异常
    如果文件不存在,则直接创建文件
    如果文件存在,则清空文件内容
    
  • x 模式

    文件不存在,创建文件,并只写方式打开
    文件存在,抛出 FileExistsError 异常
    
  • a 模式

    文件存在,只写打开,追加内容
    文件不存在,则创建后,只写打开,追加内容
    
  • 文本模式 t

    字符流,将文件的字节按照某种字符编码理解,按照字符操作。open 的默认 mode 就是 rt
    
  • 二进制模式 b

    字节流,将文件就按照字节理解,与字符编码无关。二进制模式操作时,字节操作使用 bytes 类型
    
  • + 模式

为 r w a x 提供缺失的读或者写功能,但是,获取文件对象依旧按照 r w a x 自己的特征
+ 模式不能单独使用,可以认为它时为前面的模式字符做增强功能的

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值