文件操作2-Day3

Posted Wesley·zk

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了文件操作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("\\nJuses loves you!")
f.close()

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

 

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

(2)、w+

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

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

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

Juses loves me!    

 写入文件的内容如下:

写读,写入的内容不受指针的影响,还是写入在文件的最后一行;首选会创建一个文件,所以

以上是关于文件操作2-Day3的主要内容,如果未能解决你的问题,请参考以下文章

VSCode自定义代码片段15——git命令操作一个完整流程

VSCode自定义代码片段15——git命令操作一个完整流程

VSCode 如何操作用户自定义代码片段(快捷键)

代码片段 - Golang 实现集合操作

Apollo Codegen 没有找到生成代码的操作或片段

VSCode自定义代码片段——.vue文件的模板