#open函数,该函数用于文件处理,文件操作一共就有三种方法,打开文件
#关闭文件,
#先来说下打开文件,打开文件的模式有下面几种
# 1、r,只读模式
f = open('test.log','r',encoding='utf-8')
print(f.readable())
True
# 2、w、只写模式【不可读,不存在则创建,存在则删除文件中的内容】
f = open('test.log','w',encoding='utf-8')
print(f.readable())
False
# 3、a、追加模式【不可读,不存在则创建,存在则只追加内容】
f = open('test.log','a',encoding='utf-8')
print(f.readable())
False
#
# +表示可以同时学习某个文件
# r+ 可读写文件【可读、可写、可追加】
# w+ 写读
f = open('test.log','w+',encoding='utf-8')
print(f.readable())
True
# a+ 没什么卵用
# U表示在读取时,可以将\r \n \r\n自动转换成\n
# rU
# r+U
# f = open('test.log','w',encoding='utf-8')
# f.write('中daddfdeeee')
# f.close()
f = open('test.log','r',encoding='utf-8')
ret = f.read(2)
print(ret)
#中d,这里的2是读取2个字符
#readable是否可读
#readline,读取一行
#seek和tell,读
f = open('test.log','r',encoding='utf-8')
print(f.tell())
f.read(2)
print(f.tell())
f.close()
# 0
# 4
#tell的意思是查看当前指针当前的字节的位置,第一条tell命令,因为还没有开始读,所以
#值为0,然后读了2个字符,其中一个是中文,中文为3个字节,然后在加一个英文
#为4个字节,所以tell命令输出的值为4
#seek用来指定当前指针的位置,也是字节,指定从第四个字节开始读,读两个字节的数据
f = open('test.log','r',encoding='utf-8')
f.seek(4)
ret = f.read(2)
print(ret)
f.close()
# ad
#truncate,seek指定当前的指针为4,那么truncate就会保留该指定前面的数据
#删除该指针后面的数据然后保存到源文件中
f = open('test.log','r+',encoding='utf-8')
f.seek(4)
f.truncate()
#追击内容,要切记追加默认是没有换行符的,加了\n就会换行
f.close()
f = open('test.log','a',encoding='utf-8')
f.write('aaaaaaaaaaaaaaa')
f.close()
f = open('test.log','a',encoding='utf-8')
f.write('\nbbbbbbbbbbbbbbb')
f.close()
#每次只读取一行
f = open('test.log','r',encoding='utf-8')
ret = f.readline()
print(ret)
ret = f.readline()
print(ret)