簡體   English   中英

在 pathlib.Path 中使用 format()

[英]Using format() in pathlib.Path

我正在嘗試設置一個變量以指向桌面上生成並命名為包含今天日期的文件。 但我收到以下錯誤:

IndexError: Replacement index 1 out of range for positional args tuple

該文件將附加到 Outlook email。 我知道 pathlib 需要聲明一個絕對路徑,但是如果我想使用 format() 使其指向一個名稱在生成時每天都會更改的文件怎么辦?

這是一項自動化任務,因此如果我可以使日期反映今天的日期而無需更改代碼,那將是理想的選擇。 提前致謝!

import win32com.client as client
import pathlib
import datetime

x = datetime.datetime.now()
image_path = pathlib.Path('C:/Users/username/Desktop/Folder {}/Filename {}.png'.format(x.strftime("%b %d")))

如果您使用空{}作為占位符,則預計每個都必須替換為不同的值,因此您需要在format中提供盡可能多的替換。

如果你想使用相同的值兩次,你可以給它們編號,以便兩者都使用參數來format索引 0:

import pathlib
import datetime

x = datetime.datetime.now()
image_path = pathlib.Path('C:/Users/username/Desktop/Folder {0}/Filename {0}.png'.format(x.strftime("%b %d")))

print(image_path)
# C:/Users/username/Desktop/Folder Aug 08/Filename Aug 08.png

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM