我有多个整数列表,看起来像这样。
[0, [199705, 213905, 212829, 13457, 111686, 607393, 872608, 732377, 182538, 787881, 118319, 964795, 166968, 365009, 894771, 613260, 641339, 25337, 34115, 893819, 795572, 685695, 312904, 907582, 871031, 166572, 677524, 579547, 293532, 823144, 475466, 809697, 941561, 691401, 933961, 968512, 533541, 65023, 553086, 644441, 448130, 721938, 404353, 430226, 391164, 805168, 119856, 322218, 657328, 433268]]
[1, [347154, 517159, 919812, 929796, 522835, 759868, 683323, 445616, 940315, 862788, 290265, 955975, 453456, 295093, 884128, 748140, 456509, 449460, 676630, 112028, 891628, 927525, 246077, 249585, 430901, 582551, 889207, 115453, 124599, 985059, 5141, 689344, 396875, 770571, 246748, 643185, 573140, 161546, 734303, 872849, 931835, 793428, 678324, 534229, 928903, 211030, 227042, 669851, 545325, 494357]]
总共有20个这样的列表。我必须在mapreduce范例中打印所有列表中的最大整数。输出应该是一个整数。
这就是我的尝试。
lst = []
def mapper(key, value):
lst.append(max(value))
print(key, max(lst))
def reducer(key, list_of_values):
print(max(list_of_values))
但它打印出目前列表中最大的整数,为20次。这就是我的输出看起来像
968512
985059
988109
988109
999657
999657
999657
999657
999657
999657
999657
999657
999657
999657
999657
999657
999657
999657
999657
999657
如何让它只打印一次列表中的最大数字?
答案 0 :(得分:0)
使用max()
功能一次。
print(max(lst))