我有一门课:
class A:
s = 'some string'
b = <SOME OTHER INSTANCE>
现在我想让这个类在任何时候都具有字符串的功能。即:
a = A()
print a.b
将打印b
的值。但是,我希望期望字符串(例如replace
)的函数能够工作。例如:
'aaaa'.replace('a', a)
要真正做到:
'aaa'.replace('a', a.s)
我试过了__get__
,但这是不对的。你知道吗
我知道可以通过子类化str
来实现这一点,但是有没有办法不使用它呢?你知道吗
Tags:
重写
__str__
或__unicode__
以设置对象的字符串表示形式(Python documentation)。你知道吗如果希望类具有字符串的功能,只需扩展内置的字符串类。你知道吗
我在Subclassing Python tuple with multiple __init__ arguments中找到了答案。你知道吗
我使用了Dave的解决方案和扩展str,然后添加了一个新的函数:
相关问题 更多 >
编程相关推荐