日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關咨詢
選擇下列產(chǎn)品馬上在線溝通
服務時間:8:30-17:00
你可能遇到了下面的問題
關閉右側工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
關于for循環(huán)+with向文件寫內容的幾點理解

import datetime

站在用戶的角度思考問題,與客戶深入溝通,找到湄潭網(wǎng)站設計與湄潭網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗,讓設計與互聯(lián)網(wǎng)技術結合,創(chuàng)造個性化、用戶體驗好的作品,建站類型包括:成都網(wǎng)站建設、成都網(wǎng)站設計、企業(yè)官網(wǎng)、英文網(wǎng)站、手機端網(wǎng)站、網(wǎng)站推廣、國際域名空間、網(wǎng)頁空間、企業(yè)郵箱。業(yè)務覆蓋湄潭地區(qū)。

import time

# 最后文件中只寫入了最后一次的 msg(?)

for i in range(0,5):

ctime = datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S')

msg = f"{i} - {ctime}"

with open('test.txt',mode='w+',encoding='utf8') as f:

f.write(msg)

time.sleep(5)

else:

print('--------over')

# 寫入5次,最后文件中每次寫入的內容會覆蓋前一次內容

for i in range(0,5):

ctime = datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S')

msg = f"{i} - {ctime}"

with open('test.txt',mode='w+',encoding='utf8') as f:

f.write(msg)

time.sleep(5)

else:

print('--------over')

# 寫入5次,最后文件中每次寫入的內容會覆蓋前一次內容

for i in range(0,5):

ctime = datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S')

msg = f"{i} - {ctime}"

with open('test.txt',mode='w+',encoding='utf8') as f:

f.write(msg)

f.flush() # 使用 flush()

time.sleep(5)

else:

print('--------over')

# 文件中寫入了5條數(shù)據(jù),寫入時間為文件關閉時,一次性寫入5條數(shù)據(jù)

with open('test.txt', mode='w+', encoding='utf8') as f:

for i in range(0,5):

ctime = datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S')

msg = f"{i} - {ctime}\n"

f.write(msg)

time.sleep(5)

else:無錫婦科檢查醫(yī)院 http://www.87554006.com/

print('--------over')

# 文件中先后寫入了5條數(shù)據(jù),寫入時間為每次調用 flush 后

with open('test.txt', mode='w+', encoding='utf8') as f:

for i in range(0,5):

ctime = datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S')

msg = f"{i} - {ctime}\n"

f.write(msg)

f.flush() # 使用 flush()

time.sleep(5)

else:

print('--------over')

# mode 為寫模式時,不能讀取文件內容(或者說讀取的文件內容為空)

with open('test.txt', mode='w+', encoding='utf8') as f:

r = f.read()

print(r)

注意:

由于緩沖機制,實際上字符串可能并沒有立即寫入到文件中,除非緩沖區(qū)滿時或調用 flush()或 close()方法后。

一般的文件流操作都包含緩沖機制,write方法并不直接將數(shù)據(jù)寫入文件,而是先寫入內存中特定的緩沖區(qū)。

正常情況下緩沖區(qū)滿時,操作系統(tǒng)會自動將緩沖數(shù)據(jù)寫入到文件中。

flush 方法是用來刷新緩沖區(qū)的,即將緩沖區(qū)中的數(shù)據(jù)立刻寫入文件,同時清空緩沖區(qū)。

至于 close 方法,原理是內部先調用 flush 方法來刷新緩沖區(qū),再執(zhí)行關閉操作,這樣即使緩沖區(qū)數(shù)據(jù)未滿也能保證數(shù)據(jù)的完整性。

如果進程意外退出或正常退出時而未執(zhí)行文件的close方法,緩沖區(qū)中的內容將會丟失。


分享題目:關于for循環(huán)+with向文件寫內容的幾點理解
文章URL:http://www.dlmjj.cn/article/iehssc.html