Python基础知识:整理9 文件的相关操作

1 文件的打开

python 复制代码
# open() 函数打开文件
# open(name, mode, encoding)
"""
    name:  文件名(可以包含文件所在的具体路径)
    mode:  文件打开模式
    encoding:  可选参数,表示读取文件的编码格式
"""

2 文件的读取

文件的打开模式为 r

以下为需要读的文件中的内容

2.1 读取文件-read(num)

复制代码
num 表示要从文件中读取的数据的长度(单位是字节),如果没有传入num, 那么就表示读取文件中的所有数据
python 复制代码
file = open("txt/test.txt", "r", encoding="utf-8")

# 1.读取文件-read(num)
data = file.read()
print(data)

2.2 读取文件-readlines()

复制代码
读取文件中每一行,返回一个列表,其中每一行的数据为列表中的一个元素
python 复制代码
file = open("txt/test.txt", "r", encoding="utf-8")

# 2. 读取文件-readlines()
data = file.readlines()
print(data)

2.3 读取文件-readline()

复制代码
读取文件中的一行数据
python 复制代码
file = open("txt/test.txt", "r", encoding="utf-8")

# 3. 读取文件-readline() 
data1 = file.readline()
data2 = file.readline()
data3 = file.readline()

print(f"第一行的数据是{data1}")
print(f"第二行的数据是{data2}")
print(f"第三行的数据是{data3}")

2.4 for循环读取文件行

python 复制代码
file = open("txt/test.txt", "r", encoding="utf-8")

# 4. for循环读取文件行
for line in file:
    print(line, end="")

2.5 文件关闭

python 复制代码
file.close()

2.6 with open 语法操作文件

复制代码
这种方法可以自动关闭文件,就不用手动关闭文件了
python 复制代码
with open("txt/test.txt", "r", encoding="utf-8") as file:
     list = file.readlines()
print(list)

3 文件的写入操作

文件的打开模式为 w

3.1 打开一个不存在的文件 -> 创建文件

python 复制代码
# 1.打开一个不存在的文件  创建
fw1 = open("txt/write_test.txt", "w", encoding="UTF-8")
fw1.write("hello girl!")  # 将内容写入到内存中

# flush 刷新
fw1.flush()     # 将内存中积攒的内容,写入到磁盘文件中

# 关闭文件
fw1.close()    #  关闭文件,释放资源, 内置flush方法,会自动刷新,写close()方法,可以省略flush()方法

3.2 打开一个存在的文件 -> 覆盖原本内容

python 复制代码
fw1 = open("txt/write_test.txt", "w", encoding="UTF-8")
fw1.write("hello boy!")  # 将内容写入到内存中

# flush 刷新
fw1.flush()     # 将内存中积攒的内容,写入到磁盘文件中

# 关闭文件
fw1.close()

4 文件的追加操作

文件的打开模式为 a

4.1 打开一个存在的文件 -> 追加到原本内容的后面

python 复制代码
# 1.打开一个存在的文件    追加到原本内容的后面
fw1 = open("txt/add_test.txt", "a", encoding="UTF-8")
fw1.write("I love you")  # 将内容写入到内存中

# flush 刷新
fw1.flush()     # 将内存中积攒的内容,写入到磁盘文件中

# 关闭文件
fw1.close()

4.2 打开一个不存在的文件 -> 创建文件

python 复制代码
fw1 = open("txt/add_test.txt", "a", encoding="UTF-8")
fw1.write("hello boy!")  # 将内容写入到内存中

# flush 刷新
fw1.flush()     # 将内存中积攒的内容,写入到磁盘文件中

# 关闭文件
fw1.close()
相关推荐
achene_ql30 分钟前
深入探索 RKNN 模型转换之旅
python·目标检测·rk3588·模型部署·rk3566
@十八子德月生1 小时前
8天Python从入门到精通【itheima】-1~5
大数据·开发语言·python·学习
每天一个秃顶小技巧2 小时前
02.Golang 切片(slice)源码分析(一、定义与基础操作实现)
开发语言·后端·python·golang
安特尼3 小时前
招行数字金融挑战赛数据赛道赛题一
人工智能·python·机器学习·金融·数据分析
serve the people3 小时前
解决osx-arm64平台上conda默认源没有提供 python=3.7 的官方编译版本的问题
开发语言·python·conda
多多*5 小时前
Java反射 八股版
java·开发语言·hive·python·sql·log4j·mybatis
正在走向自律5 小时前
从0到1:Python机器学习实战全攻略(8/10)
开发语言·python·机器学习
西西弗Sisyphus5 小时前
Python 处理图像并生成 JSONL 元数据文件 - 灵活text版本
开发语言·python
Taichi呀5 小时前
PyCharm 快捷键指南
ide·python·pycharm
Stara05115 小时前
基于注意力机制与iRMB模块的YOLOv11改进模型—高效轻量目标检测新范式
人工智能·python·深度学习·神经网络·目标检测·计算机视觉·yolov11