【发布时间】:2023-03-09 04:26:01
【问题描述】:
我目前遇到了编写比较器的问题。基本思想是编写一个函数,它接受参数(两个列表),但我想在这些列表的列表中使用它以在 sorted() 函数中使用它。我该怎么做?
比较器:
def dispersion_sort(frec, srec):
if isinstance(frec, intervals.Interval) and isinstance(srec, intervals.Interval):
if frec[DOUBLE_RES_COL] < srec[DOUBLE_RES_COL]:
return frec
if frec[DOUBLE_RES_COL] > srec[DOUBLE_RES_COL]:
return srec
if frec[DOUBLE_RES_COL].overlaps(srec[DOUBLE_RES_COL]):
if (frec[DOUBLE_TIME_COL] < srec[DOUBLE_TIME_COL]):
return frec
else:
return srec
return frec
样本frec 数据:
['1', 'Mikhail Nitenko', '@login', '✅', [-0.000509228437634554,0.0007110924383354339], datetime.datetime(2020, 1, 2, 14, 46, 46)]
我想怎么称呼它:
results = sorted(results, key=dispersion_sort)
非常感谢!
【问题讨论】:
-
this 是您要找的吗?
-
那么有什么问题,还提供一些示例数据和预期输出。另外,如果您使用自定义对象,请显示这些对象的定义
标签: python python-3.x sorting comparator