我嘗試向每個(gè)“.png”文件附加一個(gè)短字符串。但是當(dāng)我運(yùn)行它時(shí),它說(shuō)找不到該文件。但我知道它就在那里,并且我可以在文件夾中看到它。有什么我需要做的嗎?這是我的腳本:import osfor file in os.listdir("./pics"): if file.endswith(".png"): newFileName = "{0}_{2}{1}".format(*os.path.splitext(file) + ("z4",)) os.rename(file, newFileName)這是我收到的錯(cuò)誤消息...02.png 是文件夾中的第一個(gè)文件:fileNotFoundError: [WinError 2] 系統(tǒng)找不到指定的文件: '02.png' -> '02_z4.png'但這很奇怪,因?yàn)樗@取文件名,在本例中為02.png. 那么如果它可以讀取文件名,為什么找不到它呢?
2 回答

素胚勾勒不出你
TA貢獻(xiàn)1827條經(jīng)驗(yàn) 獲得超9個(gè)贊
我認(rèn)為我的評(píng)論可能已經(jīng)足夠了,但為了清楚起見(jiàn),我將提供一個(gè)簡(jiǎn)短的答案。
02.png相對(duì)于您的工作目錄不存在。您需要指定文件的路徑,因此os.rename需要包含目錄。
import os
for file in os.listdir("./pics"):
if file.endswith(".png"):
newFileName = "/pics/{0}_{2}{1}".format(*os.path.splitext(file) + ("z4",)) # Notice the ./pics
os.rename(os.path.join('pics', file), newFileName)

鳳凰求蠱
TA貢獻(xiàn)1825條經(jīng)驗(yàn) 獲得超4個(gè)贊
從 os.listdir() 返回的名稱給出文件名,而不是完整路徑。因此,您需要將 pics/02.png 重命名為 pics/02_zf.png。現(xiàn)在您不包含目錄名稱。
添加回答
舉報(bào)
0/150
提交
取消