关于python:来自另一个列表的列表中的唯一值

unique values in list from another list

本问题已经有最佳答案,请猛点这里访问。

正在搜索解决方案,但找不到任何解决方案。我需要创建一个程序,提示用户输入整数列表,只存储在另一个列表中唯一的整数(例如1到10),并显示结果列表。目前,我有一个程序,它只复制完整的列表并打印它,而不排序整数:

1
2
3
4
5
6
7
def inputnumber():
    numbers = input('Enter number(s): ').split(',')
    return [int(i) for i in numbers]

x = inputnumber()
y = x[:]
print(y)

抱歉,伙计们,我只是个初学者,什么都试过了。我应该使用del函数吗?还有别的方法吗?


注意,如果您只使用set,您将不会得到list,而是另一种类型,因此您必须:

1
MyList = list(set(something))

您可以使用set删除重复:

1
2
3
def inputnumber():
    numbers = input('Enter number(s): ').split(',')
    return set([int(i) for i in numbers])


您可以尝试将列表转换为集合。

1
2
3
4
5
6
7
def inputnumber():
    numbers = input('Enter number(s): ').split(',')
    return [int(i) for i in numbers]

x = inputnumber()
y = set(x)
print(y)

如@khelwood所述,集合只包含唯一值,这意味着所有重复项都将被删除。

还要记住,集合没有排序,因此数字可能以混合顺序显示。