0
我有继承的类的str
:继承,属性访问
class UpperStr(str):
def __new__(cls, value, font_size=12):
print 'In redefined new...'
return str.__new__(cls, value.upper())
def __init__(self, value, font_size=12):
print 'In init...'
self.font_size = font_size
然后我可以访问在派生类中定义的属性:
s = UpperStr('hello')
print s.font_size
但是因为没有办法从python派生类的实例中获取基类的实例,我怎么能得到str
本身的值(在这种情况下是'hello'
)?
's'或'self'就是''你好'。 's'基本上也是'str'的一个实例。 –
但python中的继承假定您的派生类将具有与派生类本身中定义的基础+附加方法和属性相同的属性和方法。在这个意义上's'不是'str'的一个实例。什么是合乎逻辑的解释? – user3880400
'isinstance(s,str)'...看起来像's'是我的'str'! – kindall