我的python代码在solo学习应用程序上运行正常,但在p

2024-04-27 04:12:06 发布

您现在位置:Python中文网/ 问答频道 /正文

我在solo learning应用程序上写了一个代码,它工作正常,但当我在电脑上输入它时,它工作不正常,它给了我其他的结果。你知道吗

代码应该只返回该列表中唯一的数字并删除重复项。你知道吗

no_list = [22,22,2,1,11,11,2,2,3,3,3,4,5,5,5,55,55,66]

def unique_list(l):
    l.sort()
    answer = []
    for i in range(len(l)):
        if i > 0:
            if l[i] != l[i-1]:
                answer.append(l[i])
            else:
                answer.append(l[0])
    return answer


print(unique_list(no_list))

代码在solo learning应用程序上返回了正确答案:

[1,2,3,4,5,11,22,55,66]

但在PC上它返回:

[2, 1, 1, 3, 1, 1, 4, 5, 1, 1, 11, 1, 22, 1, 55, 1, 66].


Tags: no代码answer应用程序列表ifdef数字
1条回答
网友
1楼 · 发布于 2024-04-27 04:12:06

“else”条件缩进不正确:

检查此项:

no_list = [22,22,2,1,11,11,2,2,3,3,3,4,5,5,5,55,55,66]

def unique_list(l):
    l.sort()
    answer = []
    for i in range(len(l)):
        if i > 0:
            if l[i] != l[i-1]:
                answer.append(l[i])
        else:
            answer.append(l[0])
    return answer


print(unique_list(no_list))

不过,还有另一种方法:

no_list = [22,22,2,1,11,11,2,2,3,3,3,4,5,5,5,55,55,66]
print(list(set(no_list)))

相关问题 更多 >