当我尝试构建具有“。”的文件路径时,pathlib出现问题。以其名称,pathlib模块将忽略它。
以下是示例行(我尝试了多个版本,所有都导致了相同的问题)
问题在于原始文件名将来自另一个应用程序,所以我自己不能编辑该文件名。如果可能的话,我也不想做字符串替换工作。
path = r“ c:\ temp”
p=Path(path).joinpath("myfile.001").with_suffix(".bat")
p=Path(path, "myfile.001").with_suffix(".bat")
p=Path(path).with_name("myfile.001").with_suffix(".bat")
所有这些行将产生为
WindowsPath('C:/temp/myfile.bat')
那么,如何使pathlib.Path正确构建此完整路径。最终路径必须是
WindowsPath('C:/temp/myfile.001.bat')
不是
WindowsPath('C:/temp/myfile.bat')
自然地,我正在寻找一种通过pathlib
本身进行操作的方法,否则我只能使用os。
谢谢
答案 0 :(得分:3)
您正在告诉pathlib用后缀data "aws_iam_policy" "config_role" {
arn = "arn:aws:iam::aws:policy/service_role/AWSConfigRole"
}
替换后缀.001
。 pathlib符合。
告诉pathlib将.bat
添加到现有后缀。
.bat