文件操作

 

打开文件的模式有:

  • r,只读模式(默认)。
  • w,只写模式。【不可读;不存在则创建;存在则删除覆盖内容;】
  • a,追加模式。【可读;   不存在则创建;存在则只追加内容;】

 

读到内存中
print(open('Log',encoding='UTF-8').read()) #以UTF-8的格式读文件

f = open('Log',encoding='UTF-8') #找到Log文件
data = f.read() #以UTF-8的格式读文件
data.replace('2月28日','xxxxx') #修改Log文件中的2月28日为xxxx(读出来的是字符串,只能替换)
data = data.replace('2月28日','xxxxx') #将修改后的内容重新赋值
print(data)
f.write(data) #将修改后的内容写回到Log文件,即保存修改内容
'''
f.write(data)
io.UnsupportedOperation: not writable
'''

 

 

 1 #1、创建文件
 2 f = open('cwb',mode='w',encoding='utf-8')
 3 data = f.write('cwb is hero  okok kkkkk')
 4 
 5 f.close()
 6 
 7 fr = open('cwb',mode='r',encoding='utf-8')
 8 data = fr.read()
 9 print(data)
10 fr.close()
11 
12 # 2、追加文件
13 fa = open('cwb',mode='a',encoding='utf-8')
14 data = fa.write('nzhcwb001')
15 data = fa.write('\n 1111111111111')
16 print(data)

3、对文件进行修改
'''
思路:
1、先以只读模式打开文件,再以写的模式新创建1个文件
2、在逐行去读,把读到的每一行写到新的文件中
3、在把原来的文件删掉,将新的文件重命名为原来的文件
'''

import os #使用文件删除、重命名需要引入OS模块
f_old = open('Log',mode='r',encoding='utf-8')
f_new = open('log_new',mode='w',encoding='utf-8')
for line in f_old:
if '月' in line:
line = line.replace('月','mmmmmmmmmmm')
f_new.write(line)
f_old.close() #保存关闭
f_new.close()
os.remove('Log')
os.rename('log_new','log')

4、文件读取
f = open('file1',mode='r',encoding='utf-8')
first = f.readline() #逐行读,读的第一行
print(first)
first = f.readline() #逐行读,读的第二行
print(first)

#循环读
f = open('file1',mode='r',encoding='utf-8')
for line in f:
print(line)

5、模糊查找
f = open('file1',mode='r',encoding='utf-8')
for line in f:
if 'wel' in line:
print(line)
posted @ 2022-03-06 14:57  nzhcwb  阅读(36)  评论(0)    收藏  举报