目录
测试文件内容
qwetryaaidaidauidauiyd
黑马程序员
张三李四王麻子
网吧到
打开文件
f = open("D:/Python/PycharmProjects/测试.txt", "r", encoding="UTF-8")
# f是open函数的文件对象,对象是Python中一种特殊的数据类型,拥有属性和方法,
print(type(f)) # <class '_io.TextIOWrapper'>
读取文件
read()方法
print(f"读取10个字节的结果:{f.read(10)}")
# read(num)表示从文件中读取的数据的长度,单位是字节,如果没有传入num,默认是文件中所有数据
print(f"read方法读取全部内容的结果是:{f.read()}")
读取10个字节的结果:qwetryaaid
read方法读取全部内容的结果是:aidauidauiyd
黑马程序员
张三李四王麻子
网吧到
readlines()方法
lines = f.readlines() # 读取文件的全部行,封装到 列表 中,其中的每一行的数据为一个元素
print(f"lines对象的类型:{type(lines)}") # <class 'list'>
print(f"lines对象的内容是:{lines}")
# ['qwetryaaidaidauidauiyd\n', '黑马程序员\n', '张三李四王麻子\n', '网吧到']
readline()方法
# 读取文件 - readline() 一次读取一行内容
line1 = f.readline()
line2 = f.readline()
line3 = f.readline()
print(f"第一行数据是:{line1}", end='') # 第一行数据是:qwetryaaidaidauidauiyd
print(f"第二行数据是:{line2}", end='')
print(f"第三行数据是:{line3}")
for循环读取文件
for line in f:
print(f"每一行数据是:{line}", end='')
文件的关闭
f.close()
# with open 语法操作文件 在语句执行完之后自动将文件关闭
with open("D:/Python/PycharmProjects/测试.txt", "r", encoding="UTF-8") as f:
for line in f:
print(f"每一行数据是:{line}", end='')
文件的写入
# 打开文件,不存在的文件, r, w, a
import time
f = open("D:/Python/PycharmProjects/test1.txt", "w", encoding="UTF-8")
# write写入
f.write("Hello World!!!") # 内容写入到内存中
# 直接调用write,内容并非真正写入文件,而是会积攒在程序的内存中,称之为缓冲区
# flush刷新
f.flush() # 将内存中积攒的内容,写入到硬盘的文件中
# # close关闭
f.close() # close方法,内置了flush的功能的
# 打开一个存在的文件
f = open("D:/Python/PycharmProjects/test2.txt", "a", encoding="UTF-8")
# write写入、flush刷新
f.write("黑马程序员")
# close关闭
f.close()
time.sleep(2)