python中文件操作的六种模式及对文件某一行进行修改的方法

一、python中文件操作的六种模式分为:r,w,a,r+,w+,a+

r叫做只读模式,只可以读取,不可以写入

w叫做写入模式,只可以写入,不可以读取

a叫做追加写入模式,只可以在末尾追加内容,不可以读取

r+叫做读写模式,可读可写,默认读光标从0也就是开头开始读取,但是写内容是从末尾开始写的

w+叫做写读模式,先清空之前内容,在从开头写入内容,默认光标在写入内容的结尾

a+叫做追加写读模式,可读可写,在末尾追加内容,,默认光标位置从原先内容末尾开始

二、对文件某一行进行修改的操作

1.创建一个文件poems:

白日依山尽,

黄河入海流。

2.现在要把第二行换成111222,操作如下:

p=open('poems','r',encoding='utf-8')  #创建一个读的文本
q=open('poems1','w',encoding='utf-8') #创建一个写的文本
number=0
for i in p: #循环打印poems的内容
number += 1
if number==2:
i='111222 ' #当读到第二行的时候,替换第二行的内容为111222
q.write(i) #把在poems中读取的内容写在poems1中
或者是:
with open('poems','r',encoding='utf-8') as p,open('poems1','w',encoding='utf-8')as q:
number = 0
for i in p: # 循环打印poems的内容
number += 1
if number == 2:
i = '111222 ' # 当读到第二行的时候,替换第二行的内容为111222
q.write(i) # 把在poems中读取的内容写在poems1中
结果如下:
白日依山尽,
111222

3.第二行后边添加111222
p=open('poems','r',encoding='utf-8')  #创建一个读的文本
q=open('poems1','w',encoding='utf-8') #创建一个写的文本
number=0
for i in p: #循环打印poems的内容
number += 1
if number==2:
i=‘’.join((i,‘111222’)) #当读到第二行的时候,添加111222
q.write(i) #把在poems中读取的内容写在poems1中,
或者是:
with open('poems','r',encoding='utf-8') as p,open('poems1','w',encoding='utf-8')as q:
number = 0
for i in p: # 循环打印poems的内容
number += 1
if number == 2:
            i=‘’.join((i,‘111222’)) #当读到第二行的时候,添加111222
        q.write(i)  # 把在poems中读取的内容写在poems1中
结果如下:
白日依山尽,
黄河入海流,111222
 
 
原文地址:https://www.cnblogs.com/bianhao89757/p/10193015.html