如果输入是整数列表,我如何使用集合确定一行代码中有多少个不同的数字?
如果输入是:
1 2 3 2 1
我想要输出:
3
很抱歉由于缺乏知识,我试图教自己如何使用套装来完成某些任务,我无法在网上找到任何可以帮助我的东西......提前致谢!
答案 0 :(得分:0)
只需使用套装。设置从列表中删除所有重复项:
import itertools
n = int(input("Enter the number of inputs "))
l = list(itertools.chain(*[map(int, input().split()) for i in range(n)]))
print(len(set(l)))
答案 1 :(得分:0)
集合是由唯一可扩展对象组成的集合。这意味着您只能添加一次对象:一旦添加,添加一个等效对象,就不会对该集合产生影响。
所以1, 2, 3, 2, 1
的集合是:
>>> set([1,2,3,2,1])
{1, 2, 3}
所以你可以使用:
>>> len(set([1,2,3,2,1]))
3
获取集合中的项目数。