如何隔离路径的一部分
How can I isolate a section of a path
我想在下面的示例中提取包含单词 "tk-nuke-writenode"
的路径。
我需要隔离那条特定路径,并且只隔离那条路径。下面的路径不固定,所以我不能使用拆分功能和 select "tk-nuke-writenode"
路径使用字段(例如 [2]
)。请参阅下面的示例:
NUKE_PATH = os.environ['NUKE_PATH']
结果:
'X:\pipeline\app_config\release\extensions\global\nuke;X:\pipeline\app_config\release\extensions\projects\sgtk\powerPlant\install\app_store\tk-nuke\v0.11.4\classic_startup\restart;X:/pipeline/app_config/release/extensions/projects/sgtk/powerPlant/install/app_store/tk-nuke-writenode/v1.4.1/gizmos'
NUKE_PATH.split(os.pathsep)[2]
结果:
'X:/pipeline/app_config/release/extensions/projects/sgtk/powerPlant/install/app_store/tk-nuke-writenode/v1.4.1/gizmos'
想要的输出:
'X:/pipeline/app_config/release/extensions/projects/sgtk/powerPlant/install/app_store/tk-nuke-writenode/v1.4.1/gizmos'
在此先感谢您提供的任何帮助!
路径以';'分隔所以你可以使用这样的东西:
NUKE_PATH = os.environ['NUKE_PATH']
l = NUKE_PATH.split(';')
result = filter(lambda path: "tk-nuke-writenode" in path, l)
假设你的路径不包含任何分号,你可以这样做
path = 'X:\pipeline\app_config\release\extensions\global\nuke;X:\pipeline\app_config\release\extensions\projects\sgtk\powerPlant\install\app_store\tk-nuke\v0.11.4\classic_startup\restart;X:/pipeline/app_config/release/extensions/projects/sgtk/powerPlant/install/app_store/tk-nuke-writenode/v1.4.1/gizmos'
matches = [p for p in path.split(';') if 'tk-nuke-writenode' in p]
matches[0]
'X:/pipeline/app_config/release/extensions/projects/sgtk/powerPlant/install/app_store/tk-nuke-writenode/v1.4.1/gizmos'
如果未找到匹配项,这将引发异常,同时处理多个匹配项可能是个好主意。
我想在下面的示例中提取包含单词 "tk-nuke-writenode"
的路径。
我需要隔离那条特定路径,并且只隔离那条路径。下面的路径不固定,所以我不能使用拆分功能和 select "tk-nuke-writenode"
路径使用字段(例如 [2]
)。请参阅下面的示例:
NUKE_PATH = os.environ['NUKE_PATH']
结果:
'X:\pipeline\app_config\release\extensions\global\nuke;X:\pipeline\app_config\release\extensions\projects\sgtk\powerPlant\install\app_store\tk-nuke\v0.11.4\classic_startup\restart;X:/pipeline/app_config/release/extensions/projects/sgtk/powerPlant/install/app_store/tk-nuke-writenode/v1.4.1/gizmos'
NUKE_PATH.split(os.pathsep)[2]
结果:
'X:/pipeline/app_config/release/extensions/projects/sgtk/powerPlant/install/app_store/tk-nuke-writenode/v1.4.1/gizmos'
想要的输出:
'X:/pipeline/app_config/release/extensions/projects/sgtk/powerPlant/install/app_store/tk-nuke-writenode/v1.4.1/gizmos'
在此先感谢您提供的任何帮助!
路径以';'分隔所以你可以使用这样的东西:
NUKE_PATH = os.environ['NUKE_PATH']
l = NUKE_PATH.split(';')
result = filter(lambda path: "tk-nuke-writenode" in path, l)
假设你的路径不包含任何分号,你可以这样做
path = 'X:\pipeline\app_config\release\extensions\global\nuke;X:\pipeline\app_config\release\extensions\projects\sgtk\powerPlant\install\app_store\tk-nuke\v0.11.4\classic_startup\restart;X:/pipeline/app_config/release/extensions/projects/sgtk/powerPlant/install/app_store/tk-nuke-writenode/v1.4.1/gizmos'
matches = [p for p in path.split(';') if 'tk-nuke-writenode' in p]
matches[0]
'X:/pipeline/app_config/release/extensions/projects/sgtk/powerPlant/install/app_store/tk-nuke-writenode/v1.4.1/gizmos'
如果未找到匹配项,这将引发异常,同时处理多个匹配项可能是个好主意。