文件操作2-Day3

一、文件操作流程

  1. 打开文件,得到文件句柄并赋值给一个变量
  2. 通过句柄对文件进行操作
  3. 关闭文件

二、文件打开模式

1、普通打开模式

  • r:只读模式(不加参数则默认只读;不能写,不能追加)
  • w:只写模式(只能写、不能读、不能追加;文件不存在则创建,存在则覆盖)
  • a:追加模式(不能读;文件不存在则创建,存在则只追加内容)

普通模式不论读、写或者追加,都是按照字符来操作的,所有在操作过程中不需要进行编码(encode)和解码(decode)的动作

(1)、r读

f=open("file",'r',encoding='utf-8')
print(f.read())
f.close()

 (2)、w写

f=open("file",'w',encoding='utf-8')
f.write("wesley")
f.close()

 (3)、a追加

f=open("file",'a',encoding='utf-8')
f.write("wesley")
f.close()

 2、同时读写模式

“+”号表示同时读写某个文件

  • r+:可读写(可读、可写、可追加;不会创建不存在的文件;不管指针在什么位置,依然在文件内容的最后添加内容)
  • w+:可读写(可读、可写、可追加;文件存在则覆盖,不存在则创建;必须设置指针为开始位置,才能读取文件)
  • a+:可读追加(可读、可追加;不存在则创建;必须设置指针为开始位置,才能读取到文件,追加和写在写入文件时,不会清空之前的内容,在文件的最后添加内容)

(1)、r+

f=open("file2",'r+',encoding='utf-8')
print(f.readline())
f.seek(0)        #设置指针的位置为开始
print(f.tell())     #获取指针的位置
f.write("
Juses loves you!")
f.close()

返回值“
wesley    #读取的内容
0    #指针位置

 

注:不管指针在什么位置,写入的内容依旧在文件的最后

(2)、w+

f=open("file2",'w+',encoding='utf-8')
print(f.read())
f.write("Juses loves you!
")
f.seek(0)
print(f.read())
print(f.tell())     #获取指针的位置
f.write("
Juses loves me!")
f.seek(0)
print(f.read())
f.close()

返回值:
                                 #第一次读的内容
Juses loves you!                 #第二次读的内容

18                               #指针的位置
Juses loves you!                 #第三次读的内容

Juses loves me!    

 写入文件的内容如下:

写读,写入的内容不受指针的影响,还是写入在文件的最后一行;首选会创建一个文件,所以
原文地址:https://www.cnblogs.com/szk5043/p/8404290.html