open函数的一些注意点及r,r+,w,w+,a,a+的区别

open函数的一些注意点
open(file[, mode[, buffering[, encoding[, errors[, newline]]]]])
(1)file文件路径及名称,需要加引号如”/Users/macxunlei/Desktop/a.txt”
(2)mode文件打开模式,r、w、a为打开文件的基本模式,对应着只读、只写、追加模式;b、t、+、U这四个字符,与以上的文件打开模式组合使用,二进制模式,文本模式,读写模式、通用换行符,根据实际情况组合使用、
(3)buffering的可取值有0,1,>1三个,0代表buffer关闭(只适用于二进制模式),1代表line buffer(只适用于文本模式),>1表示初始化的buffer大小;
(4)encoding表示的是返回的数据采用何种编码方式进行解码,一般采用’utf-8’或者’gbk’;读文件相当于解码过程,这个解码过程的默认编码(encoding为空)为系统决定的,若是windows默认为gbk,若是linux、max默认utf-8,只有这个默认编码和文件存储时编码一致才不会出现乱码。
(5)errors的取值一般有strict,ignore,当取strict的时候,字符编码出现问题的时候,会报错,当取ignore的时候,编码出现问题,程序会忽略而过,继续执行下面的程序
(6)newline可以取的值有None, \n, \r, ”, ‘\r\n’,用于区分换行符,但是这个参数只对文本模式有效;

下面就mode中的r,r+,w,w+,a,a+作一下区分:

这里写图片描述

  • 23
    点赞
  • 84
    收藏
    觉得还不错? 一键收藏
  • 6
    评论
在 Python 中,可以使用 `open()` 函数打开文件进行读写操作。`open()` 函数常用的模式参数包括:`r`、`r+`、`w`、`w+`、`a` 和 `a+`。它们的区别如下: - `r`(只读模式):打开文件并读取内容,如果文件不存在则会抛出异常。 - `r+`(读写模式):打开文件以读取和写入内容,如果文件不存在则会抛出异常。 - `w`(只写模式):打开文件以写入内容,如果文件已存在则覆盖原内容,如果文件不存在则创建新文件。 - `w+`(读写模式):打开文件以读取和写入内容,如果文件已存在则覆盖原内容,如果文件不存在则创建新文件。 - `a`(追加模式):打开文件以追加内容,如果文件不存在则创建新文件。 - `a+`(读写模式):打开文件以读取和追加内容,如果文件不存在则创建新文件。 下面是使用这些模式进行文件读写的示例代码: ```python # 写入文件 with open('test.txt', 'w') as f: f.write('Hello, world!') # 读取文件 with open('test.txt', 'r') as f: content = f.read() print(content) # 在文件末尾追加内容 with open('test.txt', 'a') as f: f.write('\nThis is a new line.') # 读取文件 with open('test.txt', 'r') as f: content = f.read() print(content) ``` 上述代码会在当前工作目录下创建一个名为 `test.txt` 的新文件,写入内容 `Hello, world!`,然后再次打开文件读取内容并输出,接着使用追加模式在文件末尾添加一行新内容,最后再次读取文件并输出。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值