案例:python
將文件內容寫入到硬件設備時候,使用系統調用,這類IO操做時間長,爲了減少IO操做,一般會使用緩衝區(有足夠多數據才能調用)。spa
文件緩衝行爲分爲:全緩衝,行緩衝,無緩衝blog
如何解決?utf-8
open(‘’, ‘’, buffering = a) # buffering設置緩衝行爲it
全緩衝: a 是正整數,當緩衝區文件大小達到a大小時候,寫入磁盤class
行緩衝: buffering = 1, 緩衝區碰到 \n 換行符的時候就寫入磁盤test
無緩衝:buffering = 0 ,寫多少,存多少coding
#!/usr/bin/python3 # 設置定長緩衝區 with open('test.text', 'w+', encoding='utf-8', buffering=20) as f: f.write('hello word!') f.write('定個小目標,掙它一個億') f.write('are you ok') # 設置行緩衝 with open('test_1.text', 'w+', encoding='utf-8', buffering=1) as f: f.write('hello word!\n') f.write('定個小目標,掙它一個億\n') f.write('are you ok\n') #設置無緩衝 # 注意,text文件類型必需要寫緩衝區 with open('test_2.text', 'wb+', buffering=0) as f: f.write(b'hello word!\n') f.write(b'are you ok')