如何在python中扩展内置类?
我想向str类添加一个方法。
我已经进行了一些搜索,但是我发现的只是较旧的帖子,我希望有人知道一些新的内容。
最佳答案
只是将类型子类化
>>> class X(str):
... def my_method(self):
... return int(self)
...
>>> s = X("Hi Mom")
>>> s.lower()
'hi mom'
>>> s.my_method()
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "<stdin>", line 3, in my_method
ValueError: invalid literal for int() with base 10: 'Hi Mom'
>>> z = X("271828")
>>> z.lower()
'271828'
>>> z.my_method()
271828