简单 文件操作

1变量 f_obj,f_handler,f_h,fh     文件句柄

open ()   python 的内置函数(内部调用的是windows的系统命令)

  1 打开文件,产生文件句柄

  2 对文件句柄进行操作

  3.关闭文件句柄

  对于r模式 mode 可以默认不写

  例

f = open("你好世界","r",encoding="utf-8")
date = f.read()
print(date)
f.close()

  1 全部读取  read()

  2 read(n)    #在r模式下,n是按照字符来进行读取

  3.readline()  一行一行的读

  4.readlines()  全部读写,返回一个list

  5.for 循环

f = open('你好世界',encoding='utf-8',mode='r')
for line in f:
    print(line.strip())
f.close()

  rb模式

  文件操作中凡是带有b字母,都是与非文字类文件有关,(比如图片,视频)

  

f = open("美女.jpg","rb")
date = f.read()
print(date)
f.close()
#b'xffxd8xffxe1Ix07Exifx00x00II*x00x08x00x00x00x0fx00x0ex01x02x00 x00x00x00xc2x00x00x00x0fx01x02x00 x00x00x00xe2x00x00x00x10x01x02x00 x00x00x00x02x01x00x00x12x01x03x00x01x00x00x00x01x00x00x00x1ax01x05x00x01x00x00x00"x01x00x00x1bx01x05x00x01x00x00x00*x01x00x00(x01x03x00

  r+模式  读写模式   先读后写

  

f = open('你好世界',"r+",encoding="utf-8")
data = f.read()    #如果不进行读,直接写入,就会在原来的文件的首内容进行更改,写入的内容占的位置与原内容有出入,会出现乱码的情况
f.write('
666')
f.close()

  w,    写模式特点:没有文件,直接创建文件进行写入,  如果有文件,直接将文件内容清空,再进行写入

  

# f = open('你好世界2', encoding='utf-8',mode='w')
# f.write('深圳市南山区,福田区,罗湖区。。。')
# f.close()

  wb 模式

f = open("美女.jpg","rb")
data = f.read()
f1 = open("美女1.jpg","wb")
dara1 = f1.write(data)
f.close()
f1.close()    
    #先将f以rb的模式读,然后再新建f1,以wb的模式进行写入,最后关闭文件

  w+   写读模式

f = open('你好世界2', encoding='utf-8',mode='w+')
f.write('深圳市南山区,福田区,罗湖区。。。')  #先进行写入
f.seek(3)  # 调整光标    #移动光标到第三个字节,Utf-8,显示中文是一个中文是三个字节
content = f.read()
print(content)  
f.close()
#圳市南山区,福田区,罗湖区。。。

  a  追加模式  如果有文件就直接在文件尾进行追加,如果没有文件,创建文件后写入内容

  a+  a+b  追加读模式  追加读的bytes模式

f.seek()  移动光标的位置,按照字节移动光标,在不同的编码下,一位字符表示不同的字节

f.tell()  告知光标的位置

truncatre 要在writable模式下进行截取

主动关闭文件句柄

  格式:with open(“文件”,"什么模式”) as f:

       print(f.read())

  多个句柄模式:

  with open (     ) as f ,open ()  as f1:

文件改的操作

  1.先以读的模式打开原文件,产生一个句柄f1

  2.以写的模式创建一个新的文件,产生一个句柄2

  3,读取源文件的内容,进行修改后添加到f2中

  4.将原文件删除,

  5,将新文件的名字重命名成原文件的名字

原文地址:https://www.cnblogs.com/yuncong/p/9469841.html