***编辑2:对不起,密码坏了。下面是说明同一问题的工作代码:
class bead():
def printmsg(a):
print('test message')
chain1=bead()
x='chain1'
eval(x + '.printmsg()')
***编辑:谢谢你回答了最初的问题。下面是我问题的一个更好的措辞版本:
class bead():
def msg():
print('test message')
x='chain1'
y='bead1'
eval(x + '.' + y + '=bead()')
chain1.bead1.msg()
输出:
'测试消息'
最好的办法是什么?
原题:
脚本:
class testClass():
test1='test1 text'
x='testClass'
y='test1'
eval(x + '.' + y)
输出:
'测试1文本'
有更好的办法吗?
***EDIT:getattr()用于从类中提取信息。谢谢你。不过,让我稍微改变一下问题:
我能用什么代替:
x=链1'
y='mol1'
最佳答案
你可以说
getattr(locals()[x], y)
或
getattr(locals().get(x), y)
这就是你的意思吗?