2024-03-29 13:50:09 发布
网友
假设我有一些对象的列表lst。在
lst
如果没有提供键函数,使用什么值来执行sorted(lst)?是杂凑还是身份证?在
sorted(lst)
Pythonsort()
sort()
This method sorts the list in place, using only < comparisons between items. Exceptions are not suppressed - if any comparison operations fail, the entire sort operation will fail (and the list will likely be left in a partially modified state).
参考:list.sort()
如果没有提供密钥,sort只使用<运算符,如本例所示:
sort
<
class A: def __init__(self,a): self.a = a def __lt__(self,other): return self.a < other.a def __repr__(self): return str(self.a) lst = [A(12),A(10),A(44)] print(sorted(lst))
我得到了:
sort在内部仅使用定义的__lt__(小于)运算符,不等于不高于。仅使用<运算符执行排序。在
__lt__
(注释__lt__运算符会导致TypeError: unorderable types: A() < A())
TypeError: unorderable types: A() < A()
Python
sort()
参考:list.sort()
如果没有提供密钥,
sort
只使用<
运算符,如本例所示:我得到了:
^{pr2}$sort
在内部仅使用定义的__lt__
(小于)运算符,不等于不高于。仅使用<
运算符执行排序。在(注释
__lt__
运算符会导致TypeError: unorderable types: A() < A()
)相关问题 更多 >
编程相关推荐