第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

函數(shù)不寫入文本文件

函數(shù)不寫入文本文件

繁華開滿天機(jī) 2022-09-13 17:20:45
我試圖在文本文件中制作一種日志,以避免重復(fù)工作。我有以下函數(shù)來執(zhí)行此任務(wù):def write_to_logbook(target_name):   with open('C:\Documents\logbook.txt', 'a+') as f:      for lines in f:          if target_name not in lines:              f.write(target_name + '\n')              f.close() #when I didn't have f.close() here, it also wasn't writing to the txt file當(dāng)我在運(yùn)行腳本后檢查文本文件時(shí),它保持為空。我不知道為什么。我這樣稱呼它(實(shí)際上目標(biāo)名稱是從唯一ID中提取的,但由于我不想把所有東西都放在這里,所以這是要點(diǎn)):target_name = 'abc123'write_to_logbook(target_name)
查看完整描述

2 回答

?
呼如林

TA貢獻(xiàn)1798條經(jīng)驗(yàn) 獲得超3個(gè)贊

您需要(可能)讀取整個(gè)文件,然后才能決定是否必須將其添加到文件中。target_name


def write_to_logbook(target_name):

    fname = r'C:\Documents\logbook.txt')


    with open(fname) as f:

        if any(target_name in line for line in f):

            return


    with open(fname, 'a') as f:

        print(target_name, file=f)

any一旦找到包含的任何行,就會(huì)返回,此時(shí)函數(shù)本身將返回。Truetarget_name


如果在讀取整個(gè)文件后找不到目標(biāo)名稱,則第二個(gè)語句會(huì)將目標(biāo)名稱附加到文件中。with


查看完整回答
反對(duì) 回復(fù) 2022-09-13
?
Helenr

TA貢獻(xiàn)1780條經(jīng)驗(yàn) 獲得超4個(gè)贊

我把它整理好了。我使用chepner的解決方案作為起點(diǎn),因?yàn)樗⒉煌耆行Вǔ鲇谀撤N原因只寫了一個(gè)),并且有點(diǎn)混合了兩者:target_name


def write_to_logbook(target_name):

    fname = 'filepath'


    with open(fname) as f:

        for lines in f:

            if target_name in lines:

                return


    with open(fname, 'a+') as f:

        f.write(target_name + '\n')

感謝您的解決方案,它有所幫助。


查看完整回答
反對(duì) 回復(fù) 2022-09-13
  • 2 回答
  • 0 關(guān)注
  • 74 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)