1

我使用 python 为 Autodesk Maya 编写脚本。Maya 是一个跨平台软件,内部使用正斜杠。如果我在 Windows 上使用 os.path.join 操作,它可能会产生如下路径:

e:/Test\\TemplatePicture.jpg

我的想法是,只要我不使用 ms-dos 命令更简单的方法来加入这样的路径部分:

pathPart1 = "e:"
pathPart2 = "Test"
pathPart3 = "TemplatePicture.jpg"
path = "s%/s%/s%" % (pathPart1, pathPart2, pathPart3) 

有什么东西使它成为一个坏主意吗?

4

2 回答 2

10

当您导入 os 时,python 将创建一个特定于您平台的 os.path。在 linux 上是 posixpath,在 windows 上是 ntpath。在处理 Maya 路径时,请使用 posixpath。即使在 Windows 上,它也会遵循 linux 约定。当您需要本地化时,请使用当前系统的真实路径进行转换。

import os
import posixpath

maya_path = posixpath.join('a','b','c')
local_path = os.path.realpath(maya_path)
于 2013-08-09T16:55:46.387 回答
0

我认为这没有任何问题。

实际上这里有一个相关的问题

总结提供的链接中的讨论 - 你要么让 python 处理文件路径,要么你自己做

于 2013-08-09T16:40:13.853 回答