亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

在 Python 中遞歸地將行附加到目錄中的所有文件

在 Python 中遞歸地將行附加到目錄中的所有文件

翻過高山走不出你 2022-01-05 12:15:36
我是 Python 新手,正在尋找一些語法幫助。我有一個帶有 *.properties 文件的目錄和子目錄(超過 100 個文件)。我想在每個文件的末尾附加 2 行文本。我正在嘗試使用 os.walk 和 f.write 但不確定如何將兩者結合用于我的目的。在下面的代碼中,我也只是嘗試通過附加 1 行文本開始,但我希望文本為 2 行。import osdir_name = "C:\\Users\\<user>\\Desktop\\test\\" # Edit as neededfor parent, dirnames, filenames in os.walk(dir_name):     for fn in filenames:        f = open(fn, 'a')          f.write("text\n")        f.close()當我運行我提供的腳本時,“test”中的文件沒有任何反應
查看完整描述

2 回答

?
暮色呼如

TA貢獻1853條經驗 獲得超9個贊

文件名不是路徑。您必須將其目錄的路徑和文件名連接起來:


f = open(os.path.join(parent, fn), 'a')

此外,這與您的問題無關,而是:


f = open(fn, 'a')  

f.write("text\n")

f.close()

一個好的(“pythonic”)風格是:


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

    f.write("text\n")

這負責正確關閉文件,即使發生錯誤。


查看完整回答
反對 回復 2022-01-05
?
九州編程

TA貢獻1785條經驗 獲得超4個贊

f = open('fn', 'a')應該是 f = open(fn, 'a')


查看完整回答
反對 回復 2022-01-05
  • 2 回答
  • 0 關注
  • 193 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號