Я хотел бы написать простой код для хранения данных гистограммы в словаре, я хочу использовать словарное понимание для построения окончательного диктанта гистограммы. в python. Я могу добиться этого несколькими способами, как показано в коде ниже, но у меня есть проблема со вторым методом, вот как он работает:
- Перечислите список случайных букв, чтобы использовать этот индекс для доступа к срезу списка, начиная с текущей итерации и до конца
- проверьте, существуют ли буквы в срезе
- , если да, добавьте букву в качестве индекса в словарь и увеличьте ее значение на 1
- если нет, добавьте букву в качестве индекса к словарю и установите его значение равным 1, моя проблема в том, где этот временный словарь добавить перед диктовкой. Понимание исчерпано. Я попробовал окончательный вариант dict «histogram_dict», но это не то же самое. Опять же, основная цель - переписать первый код в терминах словарного понимания, как во втором коде. Спасибо
import random
rnd_letters_list=[chr(random.randrange(97,122)) for i in range(21)]
histogram_dict={}
#=============first method ==============
# for letter in rnd_letters_list:
# if letter in histogram_dict:
# histogram_dict[letter]+=1
# else:
# histogram_dict[letter]=1
# print(histogram_dict)
#=============second method ==============
histogram_dict={letter: XXX_dict[letter]+=1
if letter in rnd_letters_list[indx::]
else XXX_dict[letter]=1
for indx,letter in enumerate(rnd_letters_list)}
print(histogram_dict)
#=============third method ==============
# histogram_dict={letter:rnd_letters_list.count(letter)
# for letter in rnd_letters_list}
# print(histogram_dict)
#=============fourth method ==============
# from collections import Counter
# print(dict(
# Counter(rnd_letters_list).most_common()))