2. Python文件
2.1 文件的打开、读取
2.1.1 read()方法
read() 方法用于从文件读取指定的字符数(文本模式 t)或字节数(二进制模式 b),如果未给定参数 size 或 size 为负数则读取文件所有内容。
这是测试文件第一行
这是测试文件第二行
这是测试文件第三行
# 打开文件
f = open("D:\\MyStudy\\MyCode\\PycharmProjects\\py_01\\test.txt", "r", encoding="UTF-8")
print(type(f))
# 读取文件 read()
print(f"读取10个字节的结果:{f.read(10)}")
print(f"读取5个字节的结果:{f.read(5)}")
2.1.2 readlines()方法
readlines() 方法用于读取所有行(直到结束符 EOF)并返回列表,该列表可以由 Python 的 for… in … 结构进行处理。 如果碰到结束符 EOF 则返回空字符串。
如果碰到结束符 EOF 则返回空字符串。
# 打开文件
f = open("D:\\MyStudy\\MyCode\\PycharmProjects\\py_01\\test.txt", "r", encoding="UTF-8")
# 读取文件 readlines()
lines = f.readlines()
print(f"lines对象的类型是:{type(lines)}")
print(f"lines对象的内容是:{lines}")
2.1.3 readline()方法
readline() 方法用于从文件读取整行,包括 “\n” 字符。如果指定了一个非负数的参数,则返回指定大小的字节数,包括 “\n” 字符。
# 打开文件
f = open("D:\\MyStudy\\MyCode\\PycharmProjects\\py_01\\test.txt", "r", encoding="UTF-8")
# 读取文件 readline()
line1 = f.readline()
line2 = f.readline()
line3 = f.readline()
print(f"第一行的内容是:{line1}")
print(f"第一行的内容是:{line2}")
print(f"第一行的内容是:{line3}")
2.1.4 for循环方法
# 打开文件
f = open("D:\\MyStudy\\MyCode\\PycharmProjects\\py_01\\test.txt", "r", encoding="UTF-8")
# 读取文件
for line in f:
print(line,end="")
2.1.5 with open
通过with open可以避免忘记关闭文件,在with open代码块内,当代码执行完毕,会自动关闭文件
with open("D:\\MyStudy\\MyCode\\PycharmProjects\\py_01\\test.txt", "r", encoding="UTF-8") as f:
for line in f:
print(line, end="")
2.2 文件的写入
# 1. 打开文件
f = open("D:\\MyStudy\\MyCode\\PycharmProjects\\py_01\\test.txt", "w", encoding="UTF-8")
# 2. write写入
f.write("Hello World!!!")
# 3. flush刷新
f.flush()
# 4. close关闭(close方法内置了flush方法)
f.close()
2.3 文件的追加
# 1. 打开文件
f = open("D:\\MyStudy\\MyCode\\PycharmProjects\\py_01\\test.txt", "a", encoding="UTF-8")
# 2. write写入
f.write("\nHELLO")
# 3. flush刷新
f.flush()
# 4. close关闭
f.close()