【发布时间】:2018-07-24 04:17:26
【问题描述】:
所以我无法打印出最大数量的嵌套元组。让我在这里稍微回溯一下。所以我对如何分别打印出元素、如何将分离的元素分配到新元组以及如何打印出最大数量的常规元组有了一个非常好的想法。好吧,不久前我遇到了一个挑战,希望我编写一个程序来打印出最大数量的 nested 元组。起初,我认为这可能很容易,但我一直打印出相同的变量。让我向您展示我目前所拥有的。
my_nested_tuple = ((2,12), (24, 7), (9, 18), (22, 13))
def highest_element(l):
my_max = l[0]
for num in l:
if my_max < num:
my_max = num
return my_max
print highest_element (my_nested_tuple)
这是我得到的。程序不断打印出 (24,7),但我希望它只打印出最高元素(即 24)。
任何帮助或提示将不胜感激。谢谢!
编辑:请记住,我正在学习计算机科学入门的数据结构课程,并且没有比这更进一步。
【问题讨论】:
-
元组是任意嵌套的,还是仅使用您在此处描述的结构嵌套。换句话说,这些输入是否有效:
((2,12,24),(1,2))、((2, (12, 24)), (1,2))、(2, (1,2))? -
您的算法无法正常工作。尝试
my_nested_tuple = ((2,12), (24, 7), (9, 18), (1, 600)),它仍然选择(24,7),因为您的代码比较的是元组,而不是整数。见:stackoverflow.com/q/5292303/3901060 -
不确定是否重复:您建议结合两个问题来回答这个问题。此外,它甚至不是解决问题的唯一方法(尽管是最通用的)。
标签: python nested tuples elements