use*_*069 1 python windows batch-file
我试图设置一个环境变量,如下所示,但是行有一个整数变量并运行到以下错误,如何解决这个问题?还是有更好的方法来使用python设置环境变量
row = 399
os.environ['BUILD_VER'] = row
Run Code Online (Sandbox Code Playgroud)
错误:-
os.environ['BUILD_VER'] = row
File "C:\Python27\lib\os.py", line 420, in __setitem__
putenv(key, item)
TypeError: must be string, not int
Run Code Online (Sandbox Code Playgroud)
环境变量只能包含字符串值.你必须做这样的事情:
os.environ['BUILD_VER'] = str(row)
Run Code Online (Sandbox Code Playgroud)
但是,您必须了解您设置的任何环境变量只会对Python进程及其设置后生成的任何进程生效.
例如,您不能使用Python从shell脚本设置环境变量,因为shell会生成Python,Python无法为生成它的shell设置环境变量.
如果您尝试将Windows环境变量设置为您在Python中生成的值,则应该有一个Python脚本来打印该值并让您的批处理文件执行该脚本.假设您的脚本getver.py
如下所示:
row = 399
print row
Run Code Online (Sandbox Code Playgroud)
然后您的批处理文件将包含这样的内容:
FOR /F %v IN ('getver.py') DO SET BUILD_VER=%v
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
7647 次 |
最近记录: |