文件操作

Posted albatorss

tags:

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

一.文件操作的基本流程

# 绝对路径
f = open(d:文件.txt, mode=r, encoding="utf-8")  # 打开文件,内容(‘文件路径‘,打开模式,编码方式)
a = f.read()  # 对文件进行的操作
print(a)
f.close()    # 关闭程序

# 相对路径
f = open(文件操作, mode=r, encoding="utf-8")
a = f.read()
print(a)
f.close()

二.文件的打开模式

1. 打开文件的模式有(默认为文本模式):

r ,只读模式【默认模式,文件必须存在,不存在则抛出异常】
w,只写模式【不可读;不存在则创建;存在则清空内容】

#    a :阿瑟东阿萨斯法
f = open(a, mode=w, encoding=utf-8)
content = f.write(as)

#    a:as

 


a, 只追加写模式【不可读;不存在则创建;存在则只追加内容】

#    a:阿瑟东阿萨斯法as

f = open(a, mode=a, encoding=utf-8)
content = f.write(阿萨大)
f.close()

#    a:阿瑟东阿萨斯法as阿萨大

 

2. 对于非文本文件,我们只能使用b模式,"b"表示以字节的方式操作(而所有文件也都是以字节的形式存储的,使用这种模式无需考虑文本文件的字符编码、图片文件的jgp格式、视频文件的avi格式

rb
wb
ab
注:以b方式打开时,读取到的内容是字节类型,写入时也需要提供字节类型,不能指定编码 

3,‘+’模式(就是增加了一个功能)

r+, 读写【可读,可写】

w+,写读【可写,可读】

a+, 写读【可写,可读】

4,以bytes类型操作的读写,写读,写读模式

r+b, 读写【可读,可写】
w+b,写读【可写,可读】
a+b, 写读【可写,可读】

三.操作

read  按字符定光标

a :阿瑟东阿萨斯法

f = open(a, mode=r, encoding=utf-8)
content = f.read(3)
print(content)
f.close()

#    阿瑟东

 

seek  按字节定光标(英文一个字符一个字节,中文三个字节一个字符)

#    a :阿瑟东


f = open(a, mode=r+, encoding=utf-8)
f.seek(3)
content = f.read()
print(content)
f.close()

#    瑟东
#    b: abcdefg

f = open(‘‘, mode=r+, encoding=utf-8)
f.seek(3)
content = f.read()
print(content)
f.close()

#    defgh

 

tell   告诉你光标的位置

f = open(a, mode=r+, encoding=utf-8)
content = f.tell()
print(content)
f.close()

#输出
    0

 

readline  一行一行的读

readlines  每一行当当成列表中的一个元素,然后添加到列表

truncate  截取

#    b: abcdefg


f = open(b, mode=r+, encoding=utf-8)
f.truncate(3)
content = f.read()
print(content)
f.close()

#输出
    abc

 

for line in f 将文件里的内容一行一行的输出 

with open  不用close

 

 








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

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

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

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

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

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

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