通过属性获取字符串内容

时间:2014-01-10 07:58:54

标签: python

str类使用什么属性来保存字符串的实际内容?

例如:

x = 'fruit'
print getattr(x, some_attribute) # Should print 'fruit'
getattr(x, some_attribute) == 'fruit' # Should be True

3 个答案:

答案 0 :(得分:2)

x没有包含其字符串的属性。 x本身就是字符串。

以下就足够了。

print x

或者这是一种奇特的方式,调用__str__函数:

print x.__str__()

如果您坚持使用getattr

print getattr(x, '__str__')()

但正如其他人在评论中所解释的那样,这只会返回self,这就是实例本身。

当您宣布x = 'fruit' x现在包含'fruit'时,str的实例。 x.someattribute'fruit'.someattribute相同。简而言之,'fruit'没有将其值('fruit')作为属性。这本身就是价值。

答案 1 :(得分:1)

这样的东西?

>>> x = 'fruit'
>>> getattr(x, '__str__')()
'fruit'
>>> getattr(x, '__str__')() == 'fruit'
True

答案 2 :(得分:0)

变量“x”只包含'fruit':

print x