我有下面的代码,它不工作的方式应该。你知道吗
n = int(input())
arr = map(int, input().split())
num=max(arr)
x=list(set(arr))
print (x)
返回空列表“[]”。 但是,如果我从代码中删除num=max[arr]行,它将按预期工作。你知道吗
n = int(input())
arr = map(int, input().split())
x=list(set(arr))
print (x)
输出是所有元素的列表,没有重复项。 我想在程序的其他地方使用max()值,但它似乎打破了列表的结构。为什么会这样?max函数有没有一个基本的属性我遗漏了?你知道吗
编辑:为什么人们在没有任何答案的情况下对这个问题投了反对票?我对python还比较陌生,任何帮助都将不胜感激。如果我犯了一个愚蠢的错误,请指出。你知道吗
我不知道你为什么要用地图。另一件事是,如果用户没有提供一个int,那么您将在您的输入上抛出错误,因为您正在尝试转换它。你可以把你的输入,像一个字符串'1 4 6 23 5',把它转换成一个整数列表,然后找到最大值
修正:
在Python2中,map的行为不同——对于3,它是一个迭代器。一旦使用,迭代器就是“空的”。如果您
print(type(arr))
查看映射操作的结果,您可以自己查看。你知道吗读取:^{}
相关问题 更多 >
编程相关推荐