【发布时间】:2020-04-20 08:34:39
【问题描述】:
我有两个元组,例如
tup1 = (200,(b,5),(a,5))
tup2 = (500,(b,7),(a,3))
首先,我想找到第一个元素最高的元组,但如果它们相同,我想找到第二个元素最低的元组。但是如果前两个元素等于另一个元组的前两个元素,我必须拥有具有最小第三个元素的元组。我怎样才能正确地做到这一点?
对于此示例,结果必须为 tup_end = (500,(b,7),(a,3)),因为 tup2 的第一个元素大于 tup 的第一个元素。
如果tup1 = (200,(b,5),(a,5))
tup2 = (200,(b,7),(a,3))
结果必须是tup_end = (200,(b,5),(a,5)),因为 tup1 和 tup2 的第一个元素相等,但 tup1 的第二个元素小于 tup2 的第二个元素
【问题讨论】:
-
到目前为止你尝试过什么?您的示例的预期输出是什么?
-
你不能做一个循环并检查所有这些吗?
-
请添加更完整的示例和预期输出
-
tup_end = min([tup1, tup2], key=function_which_create_object_to_compare)? -
否,因为如果第一个元素不相同,我想接收具有最大第一个元素的元组