如何将字符串本身作为变量

2024-06-25 05:35:21 发布

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

我千方百计都试过了,却找不到解决办法。你知道吗

我被困在一个应用程序中,我会举一个类似的例子

我有一些弦

arg = "school"
arg_2 = "college"

school = "enjoy"
college = "study"

我想在下面的代码中使用它

if ( arg == arg  )
  \\ want to print content of school here, 
else
  \\ want to print content of college here,

我只能用字符串'arg'来做吗?我不想在这里使用字符串'school'的名称。 有什么方法可以做到这一点吗?你知道吗


Tags: ofto字符串应用程序hereargcontent例子
2条回答

您可以使用^{}来执行此操作

>>> arg = "school"
>>> arg_2 = "college"
>>> school = "enjoy"
>>> college = "study"
>>> locals()[arg]
'enjoy'
>>> locals()[arg_2]
'study'

所以你可以简单地打印一份声明

>>> "{} at {}".format(locals()[arg], arg)
'enjoy at school'
>>> "{} at {}".format(locals()[arg_2], arg_2)
'study at college'

注意:做arg == arg是完全多余的,它的结果总是正确的

我假设你的目标是间接获得价值观。在这种情况下,考虑将变量放入类或字典中。下面是课堂教学法的一个例子:

class mydata(object):
    arg = "school"
    arg_2 = "college"

    school = "enjoy"
    college = "study"

    def value_of_value(self, s):
        return getattr(self, getattr(self, s))

x = mydata()
print 'arg->', x.value_of_value('arg')
print 'arg_2->', x.value_of_value('arg_2')

这将产生:

arg-> enjoy
arg_2-> study

相关问题 更多 >