python - Maya python 反斜杠替换问题

标签 python filepath maya

我正在尝试在 GUI 中添加自定义路径,但问题是当我使用命令时

cmds.fileDialog2(filemode=3,dialogStyle =1) 

我得到一个像

这样的文件路径
C:\Users\anoorani\Desktop\Test

但是 Maya 似乎只读取类似的路径

C:/Users/anoorani/Desktop/Test

反引号似乎是一个问题 有没有办法在Python Maya中用“/”替换“\”......?

最佳答案

根据 @ArgiriKotsaris 的注释,您可以使用 os.path.normpath(path) :

Normalize a pathname by collapsing redundant separators and up-level references.

So that A//B, A/B/, A/./B and A/foo/../B all become A/B.

This string manipulation may change the meaning of a path that contains symbolic links.

On Windows, it converts forward slashes to backward slashes.

所以你的代码是:

import maya.cmds as cmds
import os

path = cmds.fileDialog2(fm=3,dialogStyle =1)
path = path and os.path.normpath(path[0])

或者,如果您想始终使用正斜杠,则无需 os 模块并将最后一行更改为:

path = path and path[0].replace('\\', '/')

请注意 fileDialog2 的文件模式参数名称是 fileModefm,而不是 filemode

此外fileDialog2返回路径列表或无。

关于python - Maya python 反斜杠替换问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21197602/

相关文章:

c# - 如何查看父文件夹

php - 在 CAKEPHP 3.X 的 webroot 路径中配置开发和生产环境

python - 如何在maya中使用python在函数之间传递变量?

python - 查找键值来自的字典

python - 如何在 Windows 机器上删除文本文件中的空行

python - 尽管使用转义字符,但无法用反斜杠拆分字符串

python - 带字典的 PyQt QVariant

android - 如何从在android中充当usb大容量存储的设备获取文件路径

c++ - Maya c++ API,移动对象?

crash - Maya 2016 退出时崩溃