增加环境变量Python变量

2024-05-15 21:59:27 发布

您现在位置:Python中文网/ 问答频道 /正文

简短问题:

如何在批处理脚本中附加环境Python变量?我想做等于:

import sys

sys.path.append( 'E:\whatever\locallyScriptFolder' )

但是用批处理文件?我是个笨蛋。在

较长的管道问题:

我需要在Maya中设置一个Python脚本管道。所有脚本都在我们的Perforce文件夹中。这里还有一个.bat文件,它将userSetup.py复制到用户本地驱动器。此userSetup.py在Maya启动时执行。我想从Perforce文件夹启动脚本,但是这个文件夹对于每个用户都有不同的路径(有些文件夹在E驱动器上等等)。获得这些脚本的最佳方法是什么?是要附加一个环境变量吗?在

示例:

C:\Users\nameOnUser\Documents\maya\2014-x64\scripts\ **userSetup.py**

X:\RandomPath\Scripts\ **scriptWantToCallFromUserSetup1.py**

X:\RandomPath\Scripts\ **scriptWantToCallFromUserSetup2.py**


Tags: 文件用户pyimport脚本文件夹管道环境
2条回答
set PYTHONPATH=X:\RandomPath\Scripts

当Python启动时,PYTHONPATH中的任何内容都将添加到sys.path。在

@JohnZwinck的答案应该适用于从批处理文件运行python—它将为bat文件和由bat文件启动的任何文件的生命周期设置变量。但是,当bat的原始设置完成时,它将不会恢复到永久的状态。如果你改变了,也是一样系统路径或者操作系统环境在你的Python里面。在

也就是说,从您的描述中听起来,您不需要更改批处理文件中的路径,而是需要在用户设置.py. 最好的方法是在用户设置.py实际上是这样的:

import site
site.addsitedir("x:/path/to/perforce/directory") 
# you can add more folders the same way

在此版本中,您的批处理文件只复制用户设置.py到用户的Maya目录并运行Maya;用户设置.py设置Maya需要的所有路径。这比批处理文件好,因为(a)批处理文件是蹩脚的,(b)如果使用site module,则可以使用.pth files添加许多额外的目录。在

关于这个主题的更多背景:

相关问题 更多 >