按名称从模块中检索值?
Retrieving Values from Module by Name?
我正在尝试从不同目录中的单独 .py 文件读取以下数据,特别是:"assets.ovs.screen0".
这里显示的是assets.ovs的内容。screen0.placement:
selection_Size = [600,110]
selection_Loc = [1500-600,208]
selection_Mov = [0,115]
树的底部是一个文件,test.py,当前读取:
import assets.ovs.screen0.placement as placement
requiredVar = "select_"
print placement.select_Size
print eval("placement."+ requiredVar)
假设有一种 safer/easier 方法可以做到这一点,它会是什么?
我可以这样试试吗:
param = ["selection_Size", "selection_Loc", "selection_Mov", "error"]
for par in param:
print par, placement.__dict__.get(par, None)
# this should work too
# print par, getattr(placement, par, None)
输出:
selection_Size [600, 110]
selection_Loc [900, 208]
selection_Mov [0, 115]
error None
我正在尝试从不同目录中的单独 .py 文件读取以下数据,特别是:"assets.ovs.screen0".
这里显示的是assets.ovs的内容。screen0.placement:
selection_Size = [600,110]
selection_Loc = [1500-600,208]
selection_Mov = [0,115]
树的底部是一个文件,test.py,当前读取:
import assets.ovs.screen0.placement as placement
requiredVar = "select_"
print placement.select_Size
print eval("placement."+ requiredVar)
假设有一种 safer/easier 方法可以做到这一点,它会是什么?
我可以这样试试吗:
param = ["selection_Size", "selection_Loc", "selection_Mov", "error"]
for par in param:
print par, placement.__dict__.get(par, None)
# this should work too
# print par, getattr(placement, par, None)
输出:
selection_Size [600, 110]
selection_Loc [900, 208]
selection_Mov [0, 115]
error None