# f = open("xxx","r",encoding="utf-8") #读取文件,读取方式,解码格式
# print(f.readline()) #一行一行读取文件内容,一次读一行
# print(f.readable()) #判断可读性
# date = f.readlines() #将读取的内容放在一行
# print(date)
# f.close() #打开文件后要将文件关闭,防止文件一直占用内存
# f = open("xxx","w",encoding="utf8") #w,只写,并且建一个空文档覆盖原文件
# f.write("555555555\n") #将内容写进去,写的内容必须字符串
# f.writable() #判断可写
# f.writelines(["66666666666\n","77777\n"]) #将内容迭代的写进去
# f = open("xxx","a",encoding="utf8")
# f.write("添加在文件最后")
# f = open("xxx","r+")
# f.write("00") #直接在光标位置覆盖写入
""""""
# with open("xxx","r",encoding="utf8") as f1,\
# open("xxx_new","w",encoding="utf8") as f2: #一行代码过长,可以用\换行
# f1.read()
# f = open("xxx","rb") #b 的方式,不能再规定文件编码,此时是默认二进制
# date = f.read() #读取需将内容传递到一个变量才能打印出来,
# print(date)
# f = open("xxx_new","wb") #wb 只能用二进制写进去,ab 在最后写
# f.write(bytes("333\n",encoding="utf8"))
# f.write("羽".encode("utf-8"))
"""
r+ :读写。w+:写读。a+:写读。
with open :打开文件后,自动关闭文件
flush() 将写的内容刷新保存到硬盘中
tell() 显示文件内光标所在位置前面有几个字节
seek( ,) 控制光标的移动,以字节移动,需以 rb 方式,打开默认从文件开头数,
括号内的参数代表字节,从哪个位置开始算,默认是0(从开头数),1(在上一次的位置再往下数),2(从尾开始读,此时前面移动的字节需填负数)
只有read() 的括号里参数是字符,其余的文件操作方法参数都是字节
truncate() 截取文件内容,写操作,注意需要r+,或a+,但不能w+,因为w写打开时会将文件原内容覆盖
decode() 解码格式。 encoding编码格式
read(),readline()读操作都是从光标所在的位置往后读
"""
#读取文件最后一行
# f = open("xxx","rb")
# for i in f:
# n = -10 #定义一个偏移量
# while True:
# f.seek(n,2) #2代表从尾开始移动光标
# date = f.readlines() #根据前面光标移动到的位置往后读
# if len(date) > 1: #判读读到的内容是否超过一行
# print("最后一行是:%s" %date[-1].decode("utf8"))
# break
# n *= 2 #当移动的位置没超过一行时,将偏移量乘2再移动