在python中计算唯一数字

时间:2018-12-04 05:38:37

标签: python

我要计算数组中未排序的唯一数字

def unique(l):
  X=[] 
  C=0
  for a in l:
    if a not in x:
      C+=1
      X.append(a)
  return c

我希望我的输出是这样的 1 1 1 出= 0

但是1不是0,我也不知道为什么。

2 个答案:

答案 0 :(得分:2)

您这样做:

def unique(l):
    return len(set(l))

就像@YakymPirozhenko在评论中所说的

答案 1 :(得分:0)

您的代码遍历range(l),即值[0, 1, 2, ..., l-1]。尝试改为遍历l

def unique(l):
    x=[] 
    c=0
    for a in l:
        if a not in x:
            c += 1
            x.append(a)
    return c