SCons problem - dont understand Variables class

ぃ、小莉子 提交于 2019-12-10 17:41:33

问题


I'm working on an SConstruct build file for a project and I'm trying to update from Options to Variables, since Options is being deprecated. I don't understand how to use Variables though. I have 0 python experience which is probably contributing to this.

For example, I have this:

opts = Variables()
opts.Add('fcgi',0)
print opts['fcgi']

But I get an error:

AttributeError: Variables instance has no attribute '__getitem__':

Not sure how this is supposed to work


回答1:


Typically you would store the variables in your environment for later testing.

opts = Variables()
opts.Add('fcgi',0)
env = Environment(variables=opts, ...)

Then later you can test:

if env['fcgi'] == 0:
    # do something



回答2:


That specific error tells you that class Variables hasn't implemented python's __getitem__ interface which would allow you to use [ ...] on opts. If all you want to do is print out your keys, the Variables documentation seems to indicate that you can iterate over your keys:

for key in opts.keys():
    print key

Or you can print out the help text:

print opts.GenerateHelpText()


来源:https://stackoverflow.com/questions/456100/scons-problem-dont-understand-variables-class

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!