如果项目相同,foreach循环仅显示一个项目

时间:2012-07-22 14:49:43

标签: c# foreach

好吧,假设我有一个类似下面的foreach循环

items = ['red', 'orange', 'yellow', 'green', 'red', 'yellow']
foreach var item in items:
    print(item)

有没有办法一次显示重复的项目?

1 个答案:

答案 0 :(得分:10)

使用LINQ的Distinct扩展名:

foreach(var item in items.Distinct()) {
    Console.WriteLine(item);
}

以防万一你真的是指Python:

distinct = list(set(items))
distinct.sort(lambda a, b: items.index(a) - items.index(b))

for item in distinct:
    print(item)