как получить количество списка в словаре - PullRequest
0 голосов
/ 13 июня 2019

У меня есть словарь списков, и я пытаюсь подсчитать количество элементов в каждом списке в отдельности.например

dictionary{

list1: item1, item8

list2: item2, item4, item7

list3: item3, item5, item6

}

код должен сказать, что list1 содержит 2 раза, list2 содержит 3 элемента и т. д.

показывает мне списки номеров, поэтому 3 в данном случае это не то, что мне нужно: dic.values.count

также дает мне сумму общего числа в списке, поэтому в данном случае 8: dic.values.sum (x => x.count)

Ответы [ 2 ]

1 голос
/ 13 июня 2019
String report = String.Join(
    Environment.NewLine, 
    dict.Select( kvp => "List '" + kvp.Key + " has " + kvp.Value.Count.ToString("N0") + " items." )
);

В качестве альтернативы:

String report = String.Join(
    Environment.NewLine, 
    dict.Select( kvp => $"List '{kvp.Key}' has {kvp.Value.Count:N0} items." )
);
0 голосов
/ 13 июня 2019

Следующий код должен работать:

// dict is of type Dictionary<string, List<string>>
foreach(KeyValuePair<string, List<string>> entry in dict)
{
    Console.WriteLine("List " + entry.Key + " contains " + entry.Value.Count() + " items");
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...