读取文件
'''
1. 打开文件,并 返回文件的操作对象
f = open(r"文件名","访问方式(r/w/a)", encoding='utf-8')
r 只读 默认,文件的指针将放在文件的开头
w 写入 如果文件已存在将其覆盖、不存在则创建并写入
a 追加 如果已经存在,会追加在后面,不存在则创建并写入
r+ 读写
w+ 读写,不存在则创建
a+ 读写、追加。存在即追加在后面,不存在则创建
....
f对象的属性
f.closed 返回 True/False 文件是否被关闭
f.mode 返回文件打开的访问方式
f.name 返回文件的名称
'''
#f = open(r"D:\python\文件操作\1.txt") # 绝对路径
f = open(r"1.txt","r", encoding='utf-8')
'''
2.读取文件内容
'''
# text = f.read(10) # 读取前10个字节
text = f.read() # 读取全部内容
print(text)
'''
3.关闭文件
'''
f.close()
写文件
f2 = open(r"2.txt","w", encoding='utf-8')
f2.write("写入文件3")
f2.close()
文件异常情况下 关闭文件
'''
无论IO操作是否报错,都要关闭文件
'''
try:
f = open(r"1.txt", "r", encoding='utf-8')
text = f.read() # 读取全部内容
print(text)
finally:
f.close()
使用 with 操作文件
# with 作用通 try finally
# with 上下文管理器
# 使用with 使用完文件后,会自动关闭
with open(r"1.txt", "r", encoding='utf-8') as f:
print(f.read())
print(f.closed) #>>> True
print("------------------------")
# tell() 方法告诉你文件的当前位置,下一次从当前位置开始
# seek(offset,[.from]) 改变当前文件的位置 offset开始的偏移量,from指定开始移动字节的参考位置
f = open(r"2.txt", "r", encoding='utf-8')
text = f.read(10) # 读取全部内容
print("当前文本:",text)
# 查找当前位置
pos = f.tell()
print("当前文件的位置:",pos)
pos = f.seek(0,0)
text2 = f.read(10) # 读取全部内容
print("当前文本:",text2)
f.close()
使用readline、readlines读取文件
'''
f.readline() 按行读取
>>>
哈哈哈哈哈哈1
哈哈哈哈哈哈2
哈哈哈哈哈哈3
哈哈哈哈哈哈4
哈哈哈哈哈哈5
哈哈哈哈哈哈6
哈哈哈哈哈哈7
哈哈
'''
with open("3.txt","r",encoding="utf") as f:
while True:
# 读取一行
text = f.readline()
if not text:
break
print(text,end="")
'''
f.readlines() 返回一个列表。一次性读取完,每一行是一个元素
>>>
['哈哈哈哈哈哈1\n', '哈哈哈哈哈哈2\n', '哈哈哈哈哈哈3\n', '哈哈哈哈哈哈4\n', '哈哈哈哈哈哈5\n', '哈哈哈哈哈哈6\n', '哈哈哈哈哈哈7\n', '哈哈']
'''
with open("3.txt","r",encoding="utf") as f:
text = f.readlines()
print(text)
评论 (0)