Yip*_*eng 2 python overriding built-in
如何查看和覆盖内置类的完整定义?我见过图书馆的文档,但我正在寻找更多的东西.
例如,是否可以覆盖数组类,使基本索引从1开始而不是0,或者将.sort()列表重写为我自己喜欢的排序算法?
要创建自己的sort()方法,它就像这样简单:
class MyList(list):
def sort(self):
return 'custom sorting algorithm'
mylist = MyList([1,2,3])
mylist.sort() # => 'custom sorting algorithm'
Run Code Online (Sandbox Code Playgroud)
我不建议改变列表被索引的方式,因为这违反了最佳实践,所以我甚至没有提供一个例子!每当你想要破坏运算符重载或索引等内容的约定时,我觉得你应该重新考虑为什么要这样做并适应约定.
| 归档时间: |
|
| 查看次数: |
3943 次 |
| 最近记录: |