所谓双鱼

导航

 

1、文件打开方式

文件打开方式包括:读模式、写模式及追加模式

2、读模式r

不能写,打开不存在的文件会报错

 1)可以在代码运行相同路径创建文件,或者自定义创建文件,如果跟代码运行路径一样,就可以直接写文件名,否则要把文件路径也加上

f=open('test刘佳',encoding='utf-8') #打开文件,默认是读模式
print(f.read()) #读文件

输出结果是把文件内容全部读出来

2)读取一行内容

f=open('test刘佳',encoding='utf-8') #打开文件,默认是读模式
print(f.readline())#读取一行内容

输出结果为文件第一行内容

3)把每一行当做一个元素放到list中

f=open('test刘佳',encoding='utf-8') #打开文件,默认是读模式
print(f.readlines())#是把文件的每一行放list里面

输出结果为一个列表,文件中每一行是一个元素

3、写模式w

1)写入的文件不存在,会新建一个文件,在文件中写入内容

m=open('sss','w',encoding='utf-8')
m.write('ddd')  #文件不存在会新建一个文件

2)文件存在,写入后会清空原文件内容,只留下最新写的内容

f=open('test刘佳','w',encoding='utf-8')
f.write('ceshi 测试')

最后文件内容只有“cehsi 测试”

3)写模式不能读

f=open('test刘佳','w',encoding='utf-8')
f.write('ceshi 测试') #文件存在,写入后会清空原本文件内的内容,只留下写入内容
print(f.read())  #写模式不能读

执行该代码会报错,提示“not readable”

4、追加模式a

1)文件不存在会新建一个文件

m=open('ccc','a',encoding='utf-8')
m.write('多大的')  #文件不存在会新建一个文件

2)文件存在,在文件末尾增加内容

f=open('test刘佳','a',encoding='utf-8')
f.write('测试一下') #文件存在,在文件末尾增加内容

3)追加模式不能读

f=open('test刘佳','a',encoding='utf-8')
f.write('测试一下') #文件存在,在文件末尾增加内容
print(f.read())  #追加模式不能读

执行该代码会报错,提示“not readable”

5、读写模式r+

1)文件不存在会报错

2)文件存在,会在首行加入要写入的内容,并覆盖相同长度原本的内容

f=open('test刘佳','r+',encoding='utf-8')
f.write('测试后') #文件存在,会在首行加入写入的内容

3)读写模式可读

f=open('test刘佳','r+',encoding='utf-8')
print(f.read())  #可读

6、写读模式w+

1)文件不存在会新建一个文件

m=open('aa1','w+',encoding='utf-8')
m.write('多大的')  #文件不存在会新建一个文件

2)文件存在会清空原本文件内容,写入新内容

f=open('test刘佳','w+',encoding='utf-8')
f.write('啊啊啊啊') #文件存在,写入后会清空原本文件内的内容,只留下写入内容(跟w相关,都会清空原本数据)

3)写读模式不能读文件也不会报错

f=open('test刘佳','w+',encoding='utf-8')
print(f.read())#不报错也不能读

7、追加读模式a+

1)文件不存在会新建一个,并在末尾增加内容

m=open('aw1','a+',encoding='utf-8')
m.write('多大的')  #文件不存在会新建一个文件,在末尾增加内容

2)文件存在,不会清空,会在末尾增加内容

f=open('test刘佳','a+',encoding='utf-8')
f.write('自知则知之做做') #文件存在,不会清空,在末尾增加内容

3)追加读模式不能读文件也不会报错

 

f=open('test刘佳','a+',encoding='utf-8')
print(f.read()) #不报错也不能读

 

posted on 2018-04-10 17:52  所谓双鱼  阅读(150)  评论(0编辑  收藏  举报