python 文件读写模式r,r+,w,w+,a,a+的区别(附代码示例)

如下表


模式 可做操作 若文件不存在 是否覆盖
r 只能读 报错 -
r+ 可读可写 报错
w 只能写 创建
w+  可读可写 创建

a   只能写 创建 否,追加写
a+ 可读可写 创建 否,追加写
 

1.只读模式(r)一个存在的文件:

def file_operation():
    with open(‘/wzd/test.txt‘, mode=‘r‘) as f:
        # f.write(‘abc‘)
        r = f.readlines()
        print r
        print ‘---done---‘

file_operation()

正常输出:

2.只读模式(r)一个不存在的文件:

def file_operation():
    with open(‘/wzd/test001.txt‘, mode=‘r‘) as f:
        # f.write(‘abc‘)
        r = f.readlines()
        print r
        print ‘---done---‘

file_operation()

注意上面的文件名字变了,输出如下:

3.只读模式去写文件:

def file_operation():
    with open(‘/wzd/test.txt‘, mode=‘r‘) as f:
        f.write(‘abc‘)
        r = f.readlines()
        print r
        print ‘---done---‘

file_operation()

其他几种模式都差不多,不一一介绍了。

原文地址:https://www.cnblogs.com/ellisonzhang/p/10269361.html

时间: 2024-08-13 15:53:21

python 文件读写模式r,r+,w,w+,a,a+的区别(附代码示例)的相关文章

python 文件读写模式

'b' --> binary 二进制'r' --> read 读取'w' --> write 写'a' --> append 追加 于是: 'rb'就是 以二进制的形式读取文件 注:'w' 和 'a'的区别:'w'模式下, 如果文件不存在, 会创建这个文件; 如果文件存在, 则将其覆盖'a'模式下, 打开一个文件用于追加, 也就是说, 文件指针将会指向文件的结尾; 当然, 如果这个文件不存在, 也是会创建这个文件的. 至于 '+', 这个好理解.'r+' --> 'wr''w

【C++】小心使用文件读写模式:回车('\r') 换行('\n')问题的一次纠结经历

原来没有仔细注意C++读写文件的二进制模式和文本模式,这次吃了大亏.(平台:windows  VS2012) BUG出现: 写了一个程序A,生成一个文本文件F保存在本地,然后用程序B读取此文件计算MD5值. 将该文件上传到服务器,再用程序B将文件从服务器上下载下来计算MD5值,神奇的发现两次计算的MD5值不一样,文件被谁改了?? 排除问题: 1.首先对比了生成文件F和上传到服务器的文件,发现文件复制过程无差错,是同一个文件. 2.用程序B下载文件F后,保存在本地,发现文件与原文件F不一致,对比二

python文件读写详解

# Python3 open(file, mode='r', buffering=-1, encoding=None, errors=None, newline=None, closefd=True, opener=None) 文件打开模式     描述 r              以只读模式打开文件,并将文件指针指向文件头:如果文件不存在会报错 w             以只写模式打开文件,并将文件指针指向文件头:如果文件存在则将其内容清空,如果文件不存在则创建 a           

Python open文件读写模式说明

对于Python打开文件的模式,总是记不住,这次在博客里记录一下 r+: Open for reading and writing.  The stream is positioned  at  the beginning of the file. w+:Open for reading and writing.  The file is created  if  it  does not  exist, otherwise it is truncated.  The stream is pos

python3的文件读写模式

任何一种语言,文件的读写都是非常常见的.python的文件读写非常简单,仅仅一个函数open(file也可以,但是我不常用). 先看看官网的解释: open(file, mode='r', buffering=-1, encoding=None, errors=None, newline=None, closefd=True, opener=None) Open file and return a stream. Raise IOError upon failure. 常用打开模式: r 只能读

python 文件读写时用open还是codecs.open

当我面有数据需要保存时,第一时间一般会想到写到一个txt文件中,当然,数据量比较大的时候还是写到数据库比较方便管理,需要进行网络传输时要序列化,json化.下面主要整理一下平时用的最多的写入到文件中,一般以txt结尾,linux里不会以后缀来区分文件类型,后缀可以随便,也可以没有. python读写文件估计大家都用open内置函数,或者file这个工厂函数,这两个的效果基本一样. 打开文件的方式一般为:f=open(file_name,access_mode = 'r',buffering =

python文件读写小结

读文件 打开一个文件用open()方法(open()返回一个文件对象,它是可迭代的): >>> f = open('test.txt', 'r') r表示是文本文件,rb是二进制文件.(这个mode参数默认值就是r) 如果文件不存在,open()函数就会抛出一个IOError的错误,并且给出错误码和详细的信息告诉你文件不存在: >>> f=open('test.txt', 'r') Traceback (most recent call last): File &quo

C++、Python文件读写、定位等操作

一.C++文件流 1.文件流对象 C++中的文件流对象(fstream)是继承自iostream的一个类,其关系如下: fstream可以用IO运算符(>>和<<)读写文件,也可以用getline读文件. fstream特有的操作: fstream fstrm; 创建一个未绑定的文件流 fstream fstrm(s);   创建一个fstream,并打开名为s的文件,默认的文件模式依赖于fstream类型 fstream fstrm(s,mode); 与上一个构造函数类似,按指定

python 文件读写操作

读open打开文件后一定要记得调用文件对象的close()方法,用try/finally语句来确保最后能关闭文件不能把open语句放在try块里,因为当打开文件出现异常时,文件对象file_object无法执行close()方法file_name = open('test.file')读取所有内容file_object = open('thefile.txt')try:all_the_text = file_object.read( )finally:file_object.close( )读固