#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)