Разработка программных модулей

Пустой словарь:

dict_sample = {}

Cловарь, где ключи являются целыми числами:

dict_sample = {1: 'mango', 2: 'pawpaw'}

Создание словаря с ключами разных типов:

dict_sample = {'fruit': 'mango', 1: [4, 6, 8]}

Можно также создать словарь, явно вызвав метод dict():

dict_sample = dict({1:'mango', 2:'pawpaw'})

Словарь можно создать с помощью последовательности, как в примере внизу:

dict_sample = dict([(1,'mango'), (2,'pawpaw')])

Словари могут быть вложенными. Это значит, что можно создавать словари внутри существующего словаря. Например:

dict_sample = { 1: {'student1': 'Nicholas', 'student2': 'John', 'student3': 'Mercy'},

2: {'course1': 'Computer Science', 'course2': 'Mathematics', 'course3': 'Accounting'} }

Содержимое разработки

Разработка программных модулей  Добрый день, уважаемые гости, рады приветствовать вас в Московском международном колледже цифровых технологий TOP

Разработка программных модулей

Добрый день, уважаемые гости, рады приветствовать вас в Московском международном колледже цифровых технологий TOP

Словари в Python. Создание   Пустой словарь: dict_sample = {} Cловарь, где ключи являются целыми числами: dict_sample = {1: 'mango', 2: 'pawpaw'} Создание словаря с ключами разных типов: dict_sample = {'fruit': 'mango', 1: [4, 6, 8]} Можно также создать словарь, явно вызвав метод dict(): dict_sample = dict({1:'mango', 2:'pawpaw'}) Словарь можно создать с помощью последовательности, как в примере внизу: dict_sample = dict([(1,'mango'), (2,'pawpaw')]) Словари могут быть вложенными. Это значит, что можно создавать словари внутри существующего словаря. Например: dict_sample = { 1: {'student1': 'Nicholas', 'student2': 'John', 'student3': 'Mercy'}, 2: {'course1': 'Computer Science', 'course2': 'Mathematics', 'course3': 'Accounting'} }

Словари в Python. Создание

Пустой словарь:

dict_sample = {}

Cловарь, где ключи являются целыми числами:

dict_sample = {1: 'mango', 2: 'pawpaw'}

Создание словаря с ключами разных типов:

dict_sample = {'fruit': 'mango', 1: [4, 6, 8]}

Можно также создать словарь, явно вызвав метод dict():

dict_sample = dict({1:'mango', 2:'pawpaw'})

Словарь можно создать с помощью последовательности, как в примере внизу:

dict_sample = dict([(1,'mango'), (2,'pawpaw')])

Словари могут быть вложенными. Это значит, что можно создавать словари внутри существующего словаря. Например:

dict_sample = { 1: {'student1': 'Nicholas', 'student2': 'John', 'student3': 'Mercy'},

2: {'course1': 'Computer Science', 'course2': 'Mathematics', 'course3': 'Accounting'} }

Словари в Python. Вывод   Чтобы вывести содержимое словаря, можно использовать функцию print() и передать название словаря в качестве аргумента. Например: dict_sample = {

Словари в Python. Вывод

Чтобы вывести содержимое словаря, можно использовать функцию print() и передать название словаря в качестве аргумента. Например:

dict_sample = {

"Company": "Toyota",

"model": "Premio",

"year": 2012 }

print(dict_sample)

Вывод:

{'Company': 'Toyota', 'model': 'Premio', 'year': 2012}

Словари в Python. Доступ к элементами    Чтобы получить доступ к элементам словаря, нужно передать ключ в квадратных скобках []. Например: dict_sample = {

Словари в Python. Доступ к элементами

Чтобы получить доступ к элементам словаря, нужно передать ключ в квадратных скобках []. Например:

dict_sample = { "Company": "Toyota", "model": "Premio", "year": 2012 }

x = dict_sample["model"]

print(x)

Вывод:

Premio

dict = {'Name': 'Mercy', 'Age': 23, 'Course': 'Accounting'}

print("Student Name:", dict['Name'])

print("Course:", dict['Course']) print("Age:", dict['Age'])

Вывод:

Student Name: Mercy Course: Accounting Age: 23

Словари в Python. Доступ к элементами    dict_sample = {

Словари в Python. Доступ к элементами

dict_sample = {

"Company": "Toyota",

"model": "Premio",

"year": 2012 }

x = dict_sample.get("model")

print(x)

Premio

Словари в Python. Добавление элементов      Существует множество способов для добавления новых элементов в словарь. Можно использовать новый ключ и присвоить ему значение. Например: dict_sample = {

Словари в Python. Добавление элементов

Существует множество способов для добавления новых элементов в словарь. Можно использовать новый ключ и присвоить ему значение. Например:

dict_sample = {

"Company": "Toyota",

"model": "Premio",

"year": 2012 }

dict_sample["Capacity"] = "1800CC"

print(dict_sample)

Вывод:

{'Capacity': '1800CC', 'year': 2012, 'Company': 'Toyota', 'model': 'Premio'}

Словари в Python. Добавление элементов      Вот другой пример. Для начала нужно создать пустой словарь: MyDictionary = {} print(

Словари в Python. Добавление элементов

Вот другой пример. Для начала нужно создать пустой словарь:

MyDictionary = {}

print("An Empty Dictionary: ")

print(MyDictionary)

Вывод:

An Empty Dictionary:

Словарь ничего не возвращает, потому что в нем ничего не хранится. Добавим в нему элементы, один за одним:

MyDictionary[0] = 'Apples'

MyDictionary[2] = 'Mangoes'

MyDictionary[3] = 20

print("\n3 elements have been added: ")

print(MyDictionary)

Вывод:

3 elements have been added: {0: 'Apples', 2: 'Mangoes', 3: 20}

Словари в Python. Добавление элементов      Можно даже добавить несколько значений для одного ключа. Например:  MyDictionary['Values'] = 1,

Словари в Python. Добавление элементов

Можно даже добавить несколько значений для одного ключа. Например:

MyDictionary['Values'] = 1, "Pairs", 4

print("\n3 elements have been added: ")

print(MyDictionary)

Вывод:

3 elements have been added: {'Values': (1, 'Pairs', 4)}

Обновление элементов       После добавления значения в словарь существующий элемент словаря можно изменить. Для изменения значения используется соответствующий ключ. Например:  dict_sample = {

Обновление элементов

После добавления значения в словарь существующий элемент словаря можно изменить. Для изменения значения используется соответствующий ключ. Например:

dict_sample = {

"Company": "Toyota",

"model": "Premio",

"year": 2012 }

dict_sample["year"] = 2014

print(dict_sample)

Вывод:

{'year': 2014, 'model': 'Premio', 'Company': 'Toyota'}

Удаление элементов        Ключевое слово del можно использовать для удаления элемента с конкретным ключом. Например: dict_sample = {

Удаление элементов

Ключевое слово del можно использовать для удаления элемента с конкретным ключом. Например:

dict_sample = {

"Company": "Toyota",

"model": "Premio",

"year": 2012 }

del dict_sample["year"]

print(dict_sample)

Вывод:

{'Company': 'Toyota', 'model': 'Premio'}

Удаление элементов        Другой способ удалить пару ключ-значение — функция pop() с ключом записи в виде аргумента. Например: dict_sample = {

Удаление элементов

Другой способ удалить пару ключ-значение — функция pop() с ключом записи в виде аргумента.

Например:

dict_sample = {

"Company": "Toyota",

"model": "Premio",

"year": 2012 }

dict_sample.pop("year")

print(dict_sample)

Вывод:

{'Company': 'Toyota', 'model': 'Premio'}

Удаление элементов        Функция popitem() удаляет последний элемент в словаре. Для нее не нужно указывать конкретный ключ. Примеры: dict_sample = {

Удаление элементов

Функция popitem() удаляет последний элемент в словаре. Для нее не нужно указывать конкретный ключ. Примеры:

dict_sample = {

"Company": "Toyota",

"model": "Premio",

"year": 2012 }

dict_sample.popitem()

print(dict_sample)

Вывод:

{'Company': 'Toyota', 'model': 'Premio'}

Удаление элементов        Что делать, если нужно удалить целый словарь? Это будет сложно и займет много времени, если пользоваться этими методами к каждому ключу. Вместо этого можно использовать ключевое слово del для целого словаря. Например:  dict_sample = {

Удаление элементов

Что делать, если нужно удалить целый словарь? Это будет сложно и займет много времени, если пользоваться этими методами к каждому ключу. Вместо этого можно использовать ключевое слово del для целого словаря. Например:

dict_sample = {

"Company": "Toyota",

"model": "Premio",

"year": 2012 }

del dict_sample

print(dict_sample)

Вывод:

NameError: name 'dict_sample' is not defined

Другие методы для словарей        Метод len() Метод copy() Метод items()  dict_sample = {

Другие методы для словарей

  • Метод len()
  • Метод copy()
  • Метод items()

dict_sample = {

"Company": "Toyota",

"model": "Premio",

"year": 2012 }

for k, v in dict_sample.items():

print(k, v)

Вывод:

('Company', 'Toyota') ('model', 'Premio') ('year', 2012)

Другие методы для словарей        Объект, который возвращает items(), можно использовать, чтобы показать изменения в словаре. Вот как это работает. dict_sample = {

Другие методы для словарей

Объект, который возвращает items(), можно использовать, чтобы показать изменения в словаре. Вот как это работает.

dict_sample = {

"Company": "Toyota",

"model": "Premio",

"year": 2012 }

x = dict_sample.items()

print(x)

dict_sample["model"] = "Mark X"

print(x)

Вывод:

dict_items([('Company', 'Toyota'), ('model', 'Premio'), ('year', 2012)])

dict_items([('Company', 'Toyota'), ('model', 'Mark X'), ('year', 2012)])

Другие методы для словарей        Метод fromkeys()  Этот метод возвращает словарь с указанными ключами и значениями. У него следующий синтаксис: dictionary.fromkeys(keys, value)   Предположим, что нужно создать словарь с тремя ключами и одинаковым значением. Это можно сделать следующим образом: name = ('John', 'Nicholas', 'Mercy') age = (25, 17) dict_sample = dict.fromkeys(name, age) print(dict_sample) Вывод: {'John': 25, 'Mercy': 25, 'Nicholas': 25}

Другие методы для словарей

Метод fromkeys()

Этот метод возвращает словарь с указанными ключами и значениями. У него следующий синтаксис:

dictionary.fromkeys(keys, value)

Предположим, что нужно создать словарь с тремя ключами и одинаковым значением. Это можно сделать следующим образом:

name = ('John', 'Nicholas', 'Mercy')

age = (25, 17)

dict_sample = dict.fromkeys(name, age)

print(dict_sample)

Вывод:

{'John': 25, 'Mercy': 25, 'Nicholas': 25}

Другие методы для словарей        Метод update ()  Метод update() реализует своеобразную операцию конкатенации для словарей. Он объединяет ключи и значения одного словаря с ключами и значениями другого. При совпадении ключей в итоге сохранится значение словаря, указанного в качестве аргумента метода update().  В Python 3.9 появились операторы | и |=, которые реализуют операцию конкатенации словарей. x = {

Другие методы для словарей

Метод update ()

Метод update() реализует своеобразную операцию конкатенации для словарей. Он объединяет ключи и значения одного словаря с ключами и значениями другого. При совпадении ключей в итоге сохранится значение словаря, указанного в качестве аргумента метода update().

В Python 3.9 появились операторы | и |=, которые реализуют операцию конкатенации словарей.

x = {"key1": "value1 from x", "key2": "value2 from x"}

y = {"key2": "value2 from y", "key3": "value3 from y"} x | y

{'key1': 'value1 from x', 'key2': 'value2 from y', 'key3': 'value3 from y'} y | x

{'key2': 'value2 from x', 'key3': 'value3 from y', 'key1': 'value1 from x'}

https://docs.python.org/3/whatsnew/3.9.html

Другие методы для словарей        info1 = {'name': 'Bob',  'age': 25,  'job': 'Dev'}  info2 = {'age': 30,  'city': 'New York',  'email': 'bob@web.com'}  info1.update(info2)  print(info1)    {'name': 'Bob', 'age': 30, 'job': 'Dev', 'city': 'New York', 'email': 'bob@web.com'}

Другие методы для словарей

info1 = {'name': 'Bob',

'age': 25,

'job': 'Dev'}

info2 = {'age': 30,

'city': 'New York',

'email': '[email protected]'}

info1.update(info2)

print(info1)

{'name': 'Bob', 'age': 30, 'job': 'Dev', 'city': 'New York', 'email': '[email protected]'}

Другие методы для словарей        Метод setdefault ()  Метод dict.setdefault() вернет значение словаря dict, соответствующее ключу key. Если указанный ключ key отсутствует, вставит его в словарь dict со значением default и вернет значение default. Если значение по умолчанию default не установлено и ключ отсутствует, метод вставит ключ в словарь со значением None, при этом никакое значение не возвращается. По умолчанию default имеет значение None. Этот метод никогда не вызывает исключения KeyError.

Другие методы для словарей

Метод setdefault ()

Метод dict.setdefault() вернет значение словаря dict, соответствующее ключу key.

Если указанный ключ key отсутствует, вставит его в словарь dict со значением default и вернет значение default.

Если значение по умолчанию default не установлено и ключ отсутствует, метод вставит ключ в словарь со значением None, при этом никакое значение не возвращается.

По умолчанию default имеет значение None. Этот метод никогда не вызывает исключения KeyError.

x = {'one': 0, 'two': 20, 'three': 3, 'four': 4} x.setdefault('one') # 0 x.setdefault('ten') x # {'one': 0, 'two': 20, 'three': 3, 'four': 4, 'ten': None} x.setdefault('six', 6) # 6 x # {'one': 0, 'two': 20, 'three': 3, 'four': 4, 'ten': None, 'six': 6} x.setdefault('six', 10) # 6 x # {'one': 0, 'two': 20, 'three': 3, 'four': 4, 'ten': None, 'six': 6}" width="640"

Другие методы для словарей

x = {'one': 0, 'two': 20, 'three': 3, 'four': 4}

x.setdefault('one')

# 0

x.setdefault('ten')

x

# {'one': 0, 'two': 20, 'three': 3, 'four': 4, 'ten': None}

x.setdefault('six', 6)

# 6

x

# {'one': 0, 'two': 20, 'three': 3, 'four': 4, 'ten': None, 'six': 6}

x.setdefault('six', 10)

# 6

x

# {'one': 0, 'two': 20, 'three': 3, 'four': 4, 'ten': None, 'six': 6}

Вложенные словари        Словари могут содержать другие словари, которые сами, в свою очередь, содержат словари, и так далее на любую глубину. Такие словари называются вложенными словарями (мы уже сталкивались с вложенными списками и кортежами). Вложенные словари – один из способов представления структурированной информации.  Вложенный словарь создается как обычный, только каждое значение в нем – другой словарь. Приведенный ниже код создает словарь для хранения информации о сотрудниках некоторой компании. info = {'emp1': {'name': 'Timur', 'job': 'Teacher'},  'emp2': {'name': 'Ruslan', 'job': 'Developer'},  'emp3': {'name': 'Rustam', 'job': 'Tester'}}

Вложенные словари

Словари могут содержать другие словари, которые сами, в свою очередь, содержат словари, и так далее на любую глубину. Такие словари называются вложенными словарями (мы уже сталкивались с вложенными списками и кортежами). Вложенные словари – один из способов представления структурированной информации.

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

Приведенный ниже код создает словарь для хранения информации о сотрудниках некоторой компании.

info = {'emp1': {'name': 'Timur', 'job': 'Teacher'},

'emp2': {'name': 'Ruslan', 'job': 'Developer'},

'emp3': {'name': 'Rustam', 'job': 'Tester'}}

Вложенные словари        Тот же самый словарь info может быть создан по-другому: info = dict(emp1 = {'name': 'Timur', 'job': 'Teacher'},  emp2 = {'name': 'Ruslan', 'job': 'Developer'},  emp3 = {'name': 'Rustam', 'job': 'Tester'}) или ids = ['emp1', 'emp2', 'emp3'] emp_info = [{'name': 'Timur', 'job': 'Teacher'},  {'name': 'Ruslan', 'job': 'Developer'},  {'name': 'Rustam', 'job': 'Tester'}]  info = dict(zip(ids, emp_info))

Вложенные словари

Тот же самый словарь info может быть создан по-другому:

info = dict(emp1 = {'name': 'Timur', 'job': 'Teacher'},

emp2 = {'name': 'Ruslan', 'job': 'Developer'},

emp3 = {'name': 'Rustam', 'job': 'Tester'})

или

ids = ['emp1', 'emp2', 'emp3']

emp_info = [{'name': 'Timur', 'job': 'Teacher'},

{'name': 'Ruslan', 'job': 'Developer'},

{'name': 'Rustam', 'job': 'Tester'}]

info = dict(zip(ids, emp_info))

s = 'abc' t = (10, 20) u = (-5, -10, -15) list(zip(s,t,u)) [('a', 10, -5), ('b', 20, -10), ('c', 30, -15)] Что будет, если передать значения разной длины?" width="640"

Вложенные словари

Функция zip берёт на вход несколько списков и создаёт из них список кортежей, такой, что первый элемент полученного списка содержит кортеж из первых элементов всех списков-аргументов.

s = 'abc'

t = (10, 20)

u = (-5, -10, -15)

list(zip(s,t,u))

[('a', 10, -5), ('b', 20, -10), ('c', 30, -15)]

Что будет, если передать значения разной длины?

Вложенные словари        Для того чтобы получить значения определенных элементов во вложенном словаре, необходимо указать их ключи в нескольких квадратных скобках подобно тому, как мы получали значения во вложенных списках. info = {'emp1': {'name': 'Timur', 'job': 'Teacher'},  'emp2': {'name': 'Ruslan', 'job': 'Developer'},  'emp3': {'name': 'Rustam', 'job': 'Tester'}}  print(info['emp1']['name']) print(info['emp2']['job'])  Что выведет программа?

Вложенные словари

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

info = {'emp1': {'name': 'Timur', 'job': 'Teacher'},

'emp2': {'name': 'Ruslan', 'job': 'Developer'},

'emp3': {'name': 'Rustam', 'job': 'Tester'}}

print(info['emp1']['name'])

print(info['emp2']['job'])

Что выведет программа?

Вложенные словари        Чтобы изменить значение определенного элемента во вложенном словаре, необходимо обратиться к его ключу и использовать оператор присвоения (=). info = {'emp1': {'name': 'Timur', 'job': 'Teacher'},  'emp2': {'name': 'Ruslan', 'job': 'Developer'},  'emp3': {'name': 'Rustam', 'job': 'Tester'}}  info['emp1']['job'] = 'Manager'  print(info['emp1'])

Вложенные словари

Чтобы изменить значение определенного элемента во вложенном словаре, необходимо обратиться к его ключу и использовать оператор присвоения (=).

info = {'emp1': {'name': 'Timur', 'job': 'Teacher'},

'emp2': {'name': 'Ruslan', 'job': 'Developer'},

'emp3': {'name': 'Rustam', 'job': 'Tester'}}

info['emp1']['job'] = 'Manager'

print(info['emp1'])

Вложенные словари        Итерации по вложенным словарям осуществляются как правило двумя циклами for. info = {'emp1': {'name': 'Timur', 'job': 'Teacher'},  'emp2': {'name': 'Ruslan', 'job': 'Developer'},  'emp3': {'name': 'Rustam', 'job': 'Tester'}}  for emp in info:  print('Employee ID:', emp)  for key in info[emp]:  print(key + ':', info[emp][key])  print() for emp, inf in info.items():  print('Employee ID:', emp)  for key in inf:  print(key + ':', inf[key])  print()

Вложенные словари

Итерации по вложенным словарям осуществляются как правило двумя циклами for.

info = {'emp1': {'name': 'Timur', 'job': 'Teacher'},

'emp2': {'name': 'Ruslan', 'job': 'Developer'},

'emp3': {'name': 'Rustam', 'job': 'Tester'}}

for emp in info:

print('Employee ID:', emp)

for key in info[emp]:

print(key + ':', info[emp][key])

print()

for emp, inf in info.items():

print('Employee ID:', emp)

for key in inf:

print(key + ':', inf[key])

print()

Генераторы в словарях        Генераторы словаря могут выполнять итерации по любому итерируемому объекту: списки, кортежи, строки, словари. dct = {c: c * 3 for c in 'ORANGE'}  print(dct) {'O': 'OOO', 'R': 'RRR', 'A': 'AAA', 'N': 'NNN', 'G': 'GGG', 'E': 'EEE'}

Генераторы в словарях

Генераторы словаря могут выполнять итерации по любому итерируемому объекту: списки, кортежи, строки, словари.

dct = {c: c * 3 for c in 'ORANGE'}

print(dct)

{'O': 'OOO', 'R': 'RRR', 'A': 'AAA', 'N': 'NNN', 'G': 'GGG', 'E': 'EEE'}

Сохранить у себя:
Разработка программных модулей

Получите свидетельство о публикации сразу после загрузки работы



Получите бесплатно свидетельство о публикации сразу после добавления разработки