В ходе работы с НЛП мне пришлось создать словарь, где каждому слову было присвоено значение 0. Это позволило мне подсчитать, сколько раз каждое слово встречается в тексте. Я использовал цикл, чтобы проходить по тексту и увеличивать счётчик для каждого слова, которое встречалось.

Инициализация словаря Python значением 0 означает установку значения каждого ключа в словаре равным 0. Проще говоря, предположим, что у вас есть словарь, содержащий такие оценки по предметам, как {‘Math’:70,’English’:80}. После инициализации значением 0 оно должно быть таким: {‘Math’:0′,English:’0′}.

Содержание

С использованием метода присваивания

Вы можете инициализировать словарь нулём при его создании. Например, взгляните на код ниже, где ключам словаря присвоено значение 0.

#Initialize each key of dictionary country_poupulation to 0 directly
country_population = {'USA':0, 'Austrailia':0, 'Canada':0}

print(country_population)

С использованием метода присваивания

Посмотрите на результат. Каждый ключ словаря Country_population инициализируется значением 0. Это простой метод.

С использованием цикла for

Чтобы инициализировать словарь Python нулём, можно использовать цикл for для перебора словаря. В этом цикле мы будем обращаться к ключам словаря и присваивать им значение 0, одно за другим.

Например, предположим, у нас есть словарь Product_price, который выглядит так:

product_price = {'Heater':1200, 'AC':40000, 'Fan':1000}

Чтобы инициализировать словарь Product_price значением 0, вы можете использовать цикл for, как показано ниже.

for key in product_price:
  product_price[key]=0

Проверьте значение словаря, используя код ниже.

print(product_price)

С использованием цикла for

Когда вы выполняете приведенный выше код, он инициализирует каждый ключ значением 0 словаря Product_price как {‘Heater’: 0, ‘AC’: 0, ‘Fan’: 0}.

В этом коде «for key in Product_price» переменная key представляет индекс словаря. Выражение product_price[key] = 0 означает, что каждому ключу словаря присваивается значение 0.

И, наконец, для вывода всех значений словаря используется функция print (product_price).

С использованием словарного понимания

Чтобы понять, как работает словарь, нужно использовать цикл for с использованием словаря. Это означает, что вы будете использовать цикл for с фигурными скобками {} для инициализации словаря со значением 0.

Давайте рассмотрим тот же словарь Product_price, который мы использовали в предыдущем разделе. Выполните следующий код:

product_price = {'Heater':1200, 'AC':40000, 'Fan':1000}

dict_with_0 = {key: 0 for key in product_price}

print(dict_with_0)

С использованием словарного понимания

В приведённом выше понимании словаря, где ключ равен 0 для ключа в Product_price, в результате получается словарь, в котором все значения инициализированы нулём. Например, {‘Heater’: 0, ‘AC’: 0, ‘Fan’: 0}.

Давайте разберёмся с частью кода, где используется цикл for. В этом цикле ключ представляет каждый ключ из словаря Product_price. Затем каждое значение ключа инициализируется нулём с использованием конструкции ключ:0.

Используя dict.fromkeys()

Метод dict.fromkeys() – это встроенный метод в Python, который позволяет создавать новый словарь с ключами, взятыми из заданной последовательности, и значениями, установленными в указанное значение.

Например, вы можете использовать этот метод для инициализации словаря с нулевыми значениями.

Представим, что в городе Чикаго, штат Иллинойс, проходят выборы мэра. В начале дня выборов необходимо обнулить количество голосов каждого кандидата. Список кандидатов известен заранее. Давайте создадим словарь, который будет содержать информацию о количестве голосов, и инициализируем его нулевыми значениями.

candidates = ['Jonas', 'James', 'Chris', 'Jhony']
votes = dict.fromkeys(candidates, 0)
print(votes)

Используя dict.fromkeys()

Обратите внимание, как функция dict.fromkeys() инициализирует каждый ключ в словаре значением 0. В итоге мы получаем словарь, где {‘Jonas’: 0, ‘James’: 0, ‘Chris’: 0, ‘Jhony’: 0}. Давайте рассмотрим часть кода dict.fromkeys(candidates, 0).

В этом фрагменте кода функция dict.fromkeys() принимает список кандидатов в словари и значение 0. Затем она создаёт новый словарь, который содержит все ключи из списка кандидатов, но каждому ключу присваивается значение 0.

С использованием Defaultdict из коллекций

Defaultdict — это подкласс встроенного класса dict. Он переопределяет один метод для предоставления значения по умолчанию для несуществующего ключа. Это ещё один способ инициализации словаря в Python.

Например, представим, что спортивный факультет Университета Флориды хочет вести учёт спортивного инвентаря, используемого разными командами. Учитывая разнообразие видов спорта — от бейсбола до плавания, им нужна гибкая система, которая позволит использовать любой вид спорта и соответствующее оборудование, даже если это спорт, который они раньше не отслеживали.

Для ведения учёта можно использовать словарь Equipment_inventory, начальное значение которого должно быть равно нулю, как показано в коде ниже.

from collections import defaultdict

equipment_inventory = defaultdict(int)

equipment_inventory['lacrosse sticks'],
equipment_inventory['footballs']
equipment_inventory['quidditch brooms']

print(equipment_inventory)

с использованием Defaultdict из коллекций

Каждый ключ словаря Equipment_inventory инициализируется значением 0.

Мы не создавали словарь с ключами и значениями, и в этом заключается секрет. Давайте разберёмся, как этот секрет раскрывается в коде.

Строка Equipment_inventory = defaultdict(int) предназначена для автоматической инициализации отсутствующих ключей значением по умолчанию 0 при попытке к ним обратиться.

Defaultdict принимает аргумент default_factory — функцию, которая устанавливает значения по умолчанию для ключей словаря. В данном случае в defaultdict передаётся аргумент int.

Это означает, что если вы обратитесь к ключам, которых нет в словаре, то он автоматически создаст новый ключ и инициализирует его нулём.

Итак, в приведенном выше коде доступ к ключам осуществляется с помощью Equipment_inventory[‘клюшки для лакросса’], Equipment_inventory[‘футболы’] и Equipment_inventory[‘метлы для квиддича’]. Поскольку этих ключей не существует, код автоматически создает и инициализирует их значением 0.

Таким образом, вы получаете словарь со значением 0, например defaultdict(, {‘клюшки для лакросса’: 0, ‘футбольные мячи’: 0, ‘метлы для квиддича’: 0}).

Добавить комментарий