В этой программе мы увидим, как расширить словарь в Python. Функция dict.update() поможет пользователю расширить словарь с помощью пары ключ-значение из одного словаря в другой.

Пример:

Давайте возьмем пример и проверим, как расширить словарь в Python.

my_dict1 = {"james": 18, "potter": 67}

new_dictionary = {"George": 12, "Micheal": 91}
my_dict1.update(new_dictionary)
print(my_dict1)

В приведенном выше примере сначала мы инициализируем два словаря «my_dict1» и «new_dictionary», которые содержат элементы в форме пары ключ-значение.

Теперь нам нужно использовать метод dict.update(), чтобы расширить словарь до другого.

Вот выполнение следующего данного кода:

{'james': 18, 'potter': 67, 'George': 12, 'Micheal': 91}

Как использовать метод dict.update()

Содержание

Оператор **

Используя оператор **, мы можем выполнить эту конкретную задачу, и этот метод добавляет указанные элементы словаря в конец текущего словаря.

Исходный код:

my_dict = {'m': 51, 'q': 82}
z = {'k': 10, 'u': 14}

d = {**my_dict, **z}
print(d)

Выход:

{'m': 51, 'q': 82, 'k': 10, 'u': 14}

Оператор **

Функции update() и append()

В словаре Python функция append() используется для добавления элементов к ключам словаря. В словаре функция означает объединение первого словаря с другим словарем.

В словаре Python функция append() используется для добавления элементов к ключам словаря и означает объединение первого словаря с другим словарем.

В словаре Python функция update() используется для обновления словаря элементами в форме пары «ключ-значение» из другого словаря.

В словаре Python добавление может использоваться как список, мы также можем использовать оператор «+» для добавления списков каждого ключа в словаре.

Пример:

Давайте приведем пример и проверим комбинацию функций update() и append() в словаре Python.

student_name = {'Micheal':178, 'George':923}
add_new = {'Potter':236}

student_name.update(add_new)
print("Update elements",student_name)

new_country = {'Germany': 'France'}
new_country['Germany'] = [8]
new_country['Germany'].append('France')
print("Append elements",new_country)

После написания приведенного выше кода вы увидите, что сначала мы инициализируем словарь, в котором хранятся элементы пары ключ-значение. Здесь функция update() используется для добавления элемента в словарь и вызова оператора печати для отображения вывода.

После этого создайте еще один словарь и используйте функцию добавления, чтобы вставить элементы в словарь.

Вот выполнение следующего данного кода:

Update elements {'Micheal': 178, 'George': 923, 'Potter': 236}
Append elements {'Germany': [8, 'France']}

Функции update() и append()

Понимание списка

Здесь мы можем увидеть, как обновить список значений в словаре Python.

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

Исходный код:

stud_dictionary = {'student_id' :678, 'student_val' : [9,2,1], 'age' : 19}

stud_dictionary['student_val'] = [y * 4 for y in stud_dictionary['student_val']]
print("Updated dictionary:",stud_dictionary)

В приведенном выше коде, как только вы напечатаете «stud_dictionary», результат отобразится как «student_val»:[36,8,4]. В этой программе оператор «*» используется для обновления значений из списка. Вы можете проверить скриншот ниже, чтобы обновить список значений.

Выход:

Updated dictionary: {'student_id': 678, 'student_val': [36, 8, 4], 'age': 19}

Понимание списка

Расширенный класс словаря

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

Мы можем применить подклассы, такие как dict, и использовать встроенные ключевые слова, такие как «self» и «super».

Пример:

class my_new_dict(dict):
    def __init__(self, *b, **a):
        super(my_new_dict,self).__init__(*b, **a)
        self.itemlist = super(my_new_dict,self).keys()
    def __setitem__(self, new_k, new_va):
    
        set(self.itemlist).add(new_k)
        super(my_new_dict,self).__setitem__(new_k, new_va)
    def __iter__(self):
        return iter(self.itemlist)

 
new_val = my_new_dict(m=4,z=7)
print("original dictionary:",new_val)
new_val['u']=15
new_val['w']=19
print("Updated dictionary:",new_val)

Примечание. В этом примере метод dict.keys() не возвращает список, поэтому мы применяем метод self.

В приведенном выше коде, как только вы напечатаете «new_val», выходные данные будут отображаться как «{‘m’:4,’z’:7,’u’:8}’. В этой программе мы используем функцию «_init_», в которой мы назначили «self» и «*args» в качестве аргумента.

Вот реализация следующего кода:

original dictionary: {'m': 4, 'z': 7}
Updated dictionary: {'m': 4, 'z': 7, 'u': 15, 'w': 19}

метод dict.keys()

Функция extend()

Примечание. В словаре Python нет встроенной функции extend(), которую мы могли бы применить в словаре. Итак, в этом случае мы можем применить функцию update(), и она поможет пользователю обновить словарь элементами в виде пары ключ-значение из другого словаря.

Как добавить словарь к другому словарю

Используя оператор **, мы можем решить эту задачу, и этот метод вставляет указанные элементы словаря в виде пары ключ-значение в конец текущего словаря.

Пример:

my_new_org_dict = {'John': 782, 'Micheal': 173}
update_dict = {'George': 192, 'oliva': 967}

new_val = {**my_new_org_dict, **update_dict}
print(new_val)

Вывод: в приведенном выше коде сначала мы инициализируем словарь с именем «my_new_org_dict», в котором хранятся элементы, а затем используем другой словарь «update_dict».

Теперь в этой программе мы используем оператор «**» для добавления элементов. Здесь мы видим, что словарь добавлен в другой словарь.

{'John': 782, 'Micheal': 173, 'George': 192, 'oliva': 967}

Вы можете обратиться к скриншоту ниже:

Как добавить словарь к другому словарю

Разница между методами extend() и update()

В Python в словаре нет функции extend(), но мы можем применять этот метод в списках и кортежах. В Python функция update() используется для изменения словаря, и с помощью этого метода мы можем объединить старый словарь с новым словарем.

Пример:

my_new_dict = {'Mongodb':800,'Sql':892,'C++':956}

print("NewLanguages",my_new_dict)
my_new_dict.update({'java':300,'Pascal':890})
print("updated language",my_new_dict)

Вот результат выполнения следующего кода:

NewLanguages {'Mongodb': 800, 'Sql': 892, 'C++': 956}
updated language {'Mongodb': 800, 'Sql': 892, 'C++': 956, 'java': 300, 'Pascal': 890}

Разница между методами extend() и update() 

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