python文件操作

打开文件:open()

打开文件三种模式:

读:若打开文件时没有指定模式,则默认为读,只要和r沾上,文件不存在都会报错

  r   只能读取文件

  r+:读写模式

写:只要沾上w就会清空文件原有内容

  w   写入文件

  w+:写读模式

追加:

   a   追加

   a+:追加读写模式

文件操作:

f.seek(0)#移动文件指针到最前
f.truncate()#清空文件内容
f.read()#读文件read(),读取文件全部内容
f.tell()#查看当前文件指针的位置
f.readline()#只读取一行的内容
f.readlines()#读取文件里面的所有的内容,把文件里面每一行的内容放到一个list里面
f.write()#写入,必须是str类型
f.writelines()#写的时候,传入一个可迭代的对象就行
f.flush()#立即把缓冲区里面的内容写道磁盘里面
f=open('1.png','rb')#bytes,rb wb ab  以2进制模式打开
f.close()#关闭文件
# 直接循环文件对象的话,就是循环文件里面的每一行:
fw=open('hoby1.txt',encoding='utf-8')
count=1
for f in fw:
print('第%s行'%count,f)
count+=1
#修改文件:
#1、直接替换
with open('geci','a+',encoding='utf-8') as f:   #with open----使用完文件后自动关闭文件,无须写f.close
f.seek(0)
all=f.read()
new_all=all.replace('1','2')
f.seek(0)
f.truncate()
f.writelines(new_all)
f.flush()
#2、替换文件方法
import os
with open('geci','a+')as f,open('geci.bak','w')as f1:
f.seek(0)
for line in f:
new_line=line.replace('e','u')
f1.write(new_line)
os.remove('geci')
os.rename('geci.bak','geci')






posted @ 2017-12-26 17:57  hoby2017  阅读(113)  评论(0编辑  收藏  举报