文件操作

Posted liudemeng

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了文件操作相关的知识,希望对你有一定的参考价值。

文件操作

在Python语言中,操作文件需要记住一个函数和三个方法

函数方法 说明
open 打开文件,并且返回文件操作对象
read 将文件内容读取到内存中
write 将指定内容写入文件
close 关闭文件
  • open函数负责打开文件,并且返回文件对象
  • read/write/close三个方法都需要调用文件对象来调用

read方法读取文件

  • open函数的第一个参数是要打开的文件名(文件名区分大小写)
    • 如果文件存在,返回文件操作对象
    • 文件不存在,抛出异常
  • read方法可以一次性读入并且返回文件的所有内容
  • close方法负责关闭文件
# 打开文件
file = open("admin.txt")

# 读取文件内容
text = file.read()
print(text)

# 关闭文件
file.close()

打开文件的方式

  • open函数默认只读方式打开文件,并且返回文件对象

语法如下:

f = open("文件名", "访问方式")
访问方式 说明
r 只读的方式打开文件, 默认就是只读
w 只写的方式打开文件,如果文件存在则进行覆盖。如果不存在,创建新文件
a 以追加的方式打开文件,如果文件存在,则将内容追加到末尾。如果文件不存在,则创建文件并写入
r+ 读写的方式打开文件,文件不存在,抛出异常
w+ 读写的方式打开文件,如果文件存在直接覆盖,文件不存在,创建新文件
a+ 读写的方式打开文件,如果文件不存在,创建新文件进行写入,文件存在,直接追加
f = open("file", "w")

f.write("hello, world")

f.close()

按行读取文件内容

  • read方法默认把文件的所有内容一次性读取到内存中
  • 如果文件过大,内存占用会非常严重
readline方法
  • readline方法可以一次读取一行内容
  • 方法执行之后,会把文件指针移动到下一行,准备再次读取
file = open("file.txt")

while True:
    text = file.readline()
    # 判断是否有内容
    if not text:
        break
    print(text)

file.close()

文件读写复制案例

小文件复制
file_read = open("1.txt")
file_write = open("1附件.txt")

text = file_read.read()
file_write.write(text)

file_read.close()
file_write.close()
大文件复制
file_read = open("1.txt")
file_write = open("1附件.txt")

while True:
    text = file_read.readline()
    if not text:
        break
    
    file_write.write(text)

file_read.close()
file_write.close()

文件指针

  • 文件指针是标记从哪个位置开始读取数据
  • 第一次打开文件,通常文件指针会指向文件的开始位置
  • 执行read方法之后,文件指针会移动到内容的末尾

with open用法

语法格式

with open() as f:
    pass

示例代码

with open("1.txt") as f:
    f.read()

with和上下文管理你想知道吗?下篇文章揭晓

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

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

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

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

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

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

操作栏标签片段中的片段?