审稿人说要优化功能,但我不知道怎么做
class Test:
def __init__(self, name: str, tasks: str, penalties: str) -> None:
self.name = name
self.tasks = int(tasks)
self.penalties = int(penalties)
def __lt__(self, prev: 'Participant') -> bool:
if self.tasks == prev.tasks:
if self.penalties == prev.penalties:
return self.name < prev.name
return self.penalties < prev.penalties
return self.tasks > prev.tasks
def __str__(self) -> str:
return self.name
评论是:
而不是'if's,我建议你简单地比较元组
只是如果我的退货与 if 相关,我不明白该怎么做
这可以这样做:
if self.penalties == prev.penalties:,return self.penalties < prev.penalties- 因为比较符号name和是penalties相同的(<),只需比较元组(penalties, name):if self.tasks == prev.tasks:,return self.tasks > prev.tasks- 因为比较符号(penalties, name)和tasks不同,我们交换self.tasks和prev.tasks: