2.28M
Category: programmingprogramming

DS Программирование Python. Генерация списков и словарей

1.

DS
Программирование
Python
Генерация списков и словарей

2.

Введение
Тема
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

3.

Введение
Тема
На этом уроке
мы разберем
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

4.

Введение
На этом уроке
мы разберем
Тема
Что такое генераторы списков и словарей и
почему они полезны
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

5.

Введение
На этом уроке
мы разберем
Тема
Что такое генераторы списков и словарей и
почему они полезны
Синтаксис генераторов списков и словарей
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

6.

Введение
На этом уроке
мы разберем
Тема
Что такое генераторы списков и словарей и
почему они полезны
Синтаксис генераторов списков и словарей
Различные способы использования
генераторов для создания списков и словарей
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

7.

Введение
На этом уроке
мы разберем
Тема
Что такое генераторы списков и словарей и
почему они полезны
Синтаксис генераторов списков и словарей
Различные способы использования
генераторов для создания списков и словарей
Практические упражнения для закрепления
пройденного материала
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

8.

Введение
Тема
Что такое «вложенные списки» в Python?
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

9.

Введение
Тема
Что такое «вложенные списки» в Python?
Вложенный список – это структура данных, где внутри одного списка
находятся другие списки
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

10.

Введение
Тема
Что такое «вложенные списки» в Python?
Вложенный список – это структура данных, где внутри одного списка
находятся другие списки
Что такое «вложенные словари» в Python?
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

11.

Введение
Тема
Что такое «вложенные списки» в Python?
Вложенный список – это структура данных, где внутри одного списка
находятся другие списки
Что такое «вложенные словари» в Python?
Вложенный словарь – структура данных, где в качестве значений
объектов словаря выступают другие словари
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

12.

Введение
Тема
Что такое «вложенные списки» в Python?
Вложенный список – это структура данных, где внутри одного списка
находятся другие списки
Что такое «вложенные словари» в Python?
Вложенный словарь – структура данных, где в качестве значений
объектов словаря выступают другие словари
Как лучше всего перебирать элементы во вложенных структурах
данных?
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

13.

Введение
Тема
Что такое «вложенные списки» в Python?
Вложенный список – это структура данных, где внутри одного списка
находятся другие списки
Что такое «вложенные словари» в Python?
Вложенный словарь – структура данных, где в качестве значений
объектов словаря выступают другие словари
Как лучше всего перебирать элементы во вложенных структурах
данных?
С помощью цикла for
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

14.

Введение
Тема
Что такое «вложенные списки» в Python?
Вложенный список – это структура данных, где внутри одного списка
находятся другие списки
Что такое «вложенные словари» в Python?
Вложенный словарь – структура данных, где в качестве значений
объектов словаря выступают другие словари
Как лучше всего перебирать элементы во вложенных структурах
данных?
С помощью цикла for
Что такое «уровень вложенности» в контексте вложенных структур
данных?
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

15.

Введение
Тема
Что такое «вложенные списки» в Python?
Вложенный список – это структура данных, где внутри одного списка
находятся другие списки
Что такое «вложенные словари» в Python?
Вложенный словарь – структура данных, где в качестве значений
объектов словаря выступают другие словари
Как лучше всего перебирать элементы во вложенных структурах
данных?
С помощью цикла for
Что такое «уровень вложенности» в контексте вложенных структур
данных?
Уровень вложенности – это величина, показывающая количество
«слоев» вложенной структуры
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

16.

Введение
Тема
Что такое «вложенные списки» в Python?
Вложенный список – это структура данных, где внутри одного списка
находятся другие списки
Что такое «вложенные словари» в Python?
Вложенный словарь – структура данных, где в качестве значений
объектов словаря выступают другие словари
Как лучше всего перебирать элементы во вложенных структурах
данных?
С помощью цикла for
Что такое «уровень вложенности» в контексте вложенных структур
данных?
Уровень вложенности – это величина, показывающая количество
«слоев» вложенной структуры
С помощью какого метода словарей можно быстро получить и
ключи, и значения?
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

17.

Введение
Тема
Что такое «вложенные списки» в Python?
Вложенный список – это структура данных, где внутри одного списка
находятся другие списки
Что такое «вложенные словари» в Python?
Вложенный словарь – структура данных, где в качестве значений
объектов словаря выступают другие словари
Как лучше всего перебирать элементы во вложенных структурах
данных?
С помощью цикла for
Что такое «уровень вложенности» в контексте вложенных структур
данных?
Уровень вложенности – это величина, показывающая количество
«слоев» вложенной структуры
С помощью какого метода словарей можно быстро получить и
ключи, и значения?
С помощью метода items()
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

18.

Теория
Генераторы списков
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

19.

Генераторы списков
(num)
Теория
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

20.

Теория
Генераторы списков
(num)
numbers = []
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

21.

Теория
Генераторы списков
numbers = []
(num)
for num in range(1, 100001):
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

22.

Теория
Генераторы списков
numbers = []
(num)
for num in range(1, 100001):
numbers.append(num)
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

23.

Теория
Генераторы списков
numbers = []
(num)
for num in range(1, 100001):
(num)
numbers.append(num)
numbers = [num for num in range(1, 100001)]
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

24.

Теория
Генераторы списков
Генератор списков – инструмент, позволяющий создать
список и наполнить его данными в одной строке кода
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

25.

Теория
Генераторы списков
Генератор списков – инструмент, позволяющий создать
список и наполнить его данными в одной строке кода
[выражение for переменная in последовательность if условие]
переменная – имя переменной, которую мы обычно объявляем в цикле for
последовательность – откуда берем элементы для сохранения в словарь
(например, функция range())
выражение – что именно будет сохранено в список (чаще всего основывается
на переменной)
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

26.

Теория
Генераторы списков
Генераторы списков работают немного быстрее, чем классическое создания
списка через for и метод append().
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

27.

Задание №
1
С помощью генератора создайте список, состоящий из квадратов натуральных чисел от до 1 до N
включительно. Число N вводится с клавиатуры.
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

28.

Задание №
1
С помощью генератора создайте список, состоящий из квадратов натуральных чисел от до 1 до N
включительно. Число N вводится с клавиатуры.
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

29.

Задание №
1
С помощью генератора создайте список, состоящий из квадратов натуральных чисел от до 1 до N
включительно. Число N вводится с клавиатуры.
N = int(input())
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

30.

Задание №
1
С помощью генератора создайте список, состоящий из квадратов натуральных чисел от до 1 до N
включительно. Число N вводится с клавиатуры.
N = int(input())
squares = [num**2 for num in range(1, N + 1)]
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

31.

Задание №
1
С помощью генератора создайте список, состоящий из квадратов натуральных чисел от до 1 до N
включительно. Число N вводится с клавиатуры.
N = int(input())
squares = [num**2 for num in range(1, N + 1)]
print(squares)
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

32.

Задание №
1
С помощью генератора создайте список, состоящий из квадратов натуральных чисел от до 1 до N
включительно. Число N вводится с клавиатуры.
squares = [num**2 for num in range(1, int(input())+ 1)]
print(squares)
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

33.

Задание №
2
На вход с клавиатуры подается строка с символами. Создайте список, элементами которого
являются отдельные символы строки.
Например, если на вход подали строку programming, то на выходе получаем список
['p', 'r', 'o', 'g', 'r', 'a', 'm', 'm', 'i', 'n', 'g']
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

34.

Задание №
2
На вход с клавиатуры подается строка с символами. Создайте список, элементами которого
являются отдельные символы строки.
Например, если на вход подали строку programming, то на выходе получаем список
['p', 'r', 'o', 'g', 'r', 'a', 'm', 'm', 'i', 'n', 'g']
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

35.

Задание №
2
На вход с клавиатуры подается строка с символами. Создайте список, элементами которого
являются отдельные символы строки.
Например, если на вход подали строку programming, то на выходе получаем список
['p', 'r', 'o', 'g', 'r', 'a', 'm', 'm', 'i', 'n', 'g']
line = input()
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

36.

Задание №
2
На вход с клавиатуры подается строка с символами. Создайте список, элементами которого
являются отдельные символы строки.
Например, если на вход подали строку programming, то на выходе получаем список
['p', 'r', 'o', 'g', 'r', 'a', 'm', 'm', 'i', 'n', 'g']
line = input()
symbols = [sym for sym in line]
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

37.

Задание №
2
На вход с клавиатуры подается строка с символами. Создайте список, элементами которого
являются отдельные символы строки.
Например, если на вход подали строку programming, то на выходе получаем список
['p', 'r', 'o', 'g', 'r', 'a', 'm', 'm', 'i', 'n', 'g']
line = input()
symbols = [sym for sym in line]
print(symbols)
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

38.

Задание №
2
На вход с клавиатуры подается строка с символами. Создайте список, элементами которого
являются отдельные символы строки.
Например, если на вход подали строку programming, то на выходе получаем список
['p', 'r', 'o', 'g', 'r', 'a', 'm', 'm', 'i', 'n', 'g']
symbols = [sym for sym in input()]
print(symbols)
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

39.

Задание №
3
Рассматривается диапазон целых чисел от 100 до 1000 включительно. В данном диапазоне
найдите и сохраните в список только те числа, которые кратны 7.
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

40.

Задание №
3
Рассматривается диапазон целых чисел от 100 до 1000 включительно. В данном диапазоне
найдите и сохраните в список только те числа, которые кратны 7.
numbers = [num for num in range(100, 1001)]
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

41.

Задание №
3
Рассматривается диапазон целых чисел от 100 до 1000 включительно. В данном диапазоне
найдите и сохраните в список только те числа, которые кратны 7.
numbers = [num for num in range(100, 1001)]
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

42.

Задание №
3
Рассматривается диапазон целых чисел от 100 до 1000 включительно. В данном диапазоне
найдите и сохраните в список только те числа, которые кратны 7.
numbers = [num for num in range(100, 1001)]
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

43.

Задание №
3
Рассматривается диапазон целых чисел от 100 до 1000 включительно. В данном диапазоне
найдите и сохраните в список только те числа, которые кратны 7.
numbers = [num for num in range(100, 1001) if num % 7 == 0]
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

44.

Теория
Генераторы списков
[выражение for переменная in последовательность if условие]
переменная – имя переменной, которую мы обычно объявляем в цикле for
последовательность – откуда берем элементы для сохранения в словарь
(например, функция range())
выражение – что именно будет сохранено в список (чаще всего основывается
на переменной)
условие - критерий, по которому отбираются элементы в список
(выглядит как классический условный оператор if)
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

45.

Задание №
4
Имеется список cities, содержащий строки с названиями городов. Необходимо создать список
new_cities, элементам которого будут города из списка cities, начинающиеся с буквы «А» и
состоящие не менее, чем из 7 букв.
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

46.

Задание №
4
Имеется список cities, содержащий строки с названиями городов. Необходимо создать список
new_cities, элементам которого будут города из списка cities, начинающиеся с буквы «А» и
состоящие не менее, чем из 7 букв.
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

47.

Задание №
4
Имеется список cities, содержащий строки с названиями городов. Необходимо создать список
new_cities, элементам которого будут города из списка cities, начинающиеся с буквы «А» и
состоящие не менее, чем из 7 букв.
cities = ['Самара', 'Москва', 'Анапа', 'Новосибирск', 'Архангельск',
'Екатеринбург', 'Александровск']
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

48.

Задание №
4
Имеется список cities, содержащий строки с названиями городов. Необходимо создать список
new_cities, элементам которого будут города из списка cities, начинающиеся с буквы «А» и
состоящие не менее, чем из 7 букв.
cities = ['Самара', 'Москва', 'Анапа', 'Новосибирск', 'Архангельск',
'Екатеринбург', 'Александровск']
new_cities = [city for city in cities if city[0] == 'А' and len(city)
>= 7]
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

49.

Задание №
4
Имеется список cities, содержащий строки с названиями городов. Необходимо создать список
new_cities, элементам которого будут города из списка cities, начинающиеся с буквы «А» и
состоящие не менее, чем из 7 букв.
cities = ['Самара', 'Москва', 'Анапа', 'Новосибирск', 'Архангельск',
'Екатеринбург', 'Александровск']
new_cities = [city for city in cities if city[0] == 'А' and len(city)
>= 7]
print(new_cities)
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

50.

Задание №
4
Имеется список cities, содержащий строки с названиями городов. Необходимо создать список
new_cities, элементам которого будут города из списка cities, начинающиеся с буквы «А» и
состоящие не менее, чем из 7 букв.
cities = ['Самара', 'Москва', 'Анапа', 'Новосибирск', 'Архангельск',
'Екатеринбург', 'Александровск']
new_cities = [city for city in cities if city[0] == 'А' and len(city)
>= 7]
print(new_cities)
>>> ['Архангельск', 'Александровск']
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

51.

Задание №
5
Из списка городов в предыдущем задании, выберите и сохраните в список uniq_cities только те, где
каждая буква встречается ровно один раз. Например, Москва.
Примечание: буквы, отличающиеся только регистром, считаются одинаковыми. Например, в
названии «Екатеринбург» содержится 2 буквы «е», поэтому этот город под условие не
подойдет.
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

52.

Задание №
5
Из списка городов в предыдущем задании, выберите и сохраните в список uniq_cities только те, где
каждая буква встречается ровно один раз. Например, Москва.
Примечание: буквы, отличающиеся только регистром, считаются одинаковыми. Например, в
названии «Екатеринбург» содержится 2 буквы «е», поэтому этот город под условие не
подойдет.
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

53.

Задание №
5
Из списка городов в предыдущем задании, выберите и сохраните в список uniq_cities только те, где
каждая буква встречается ровно один раз. Например, Москва.
Примечание: буквы, отличающиеся только регистром, считаются одинаковыми. Например, в
названии «Екатеринбург» содержится 2 буквы «е», поэтому этот город под условие не
подойдет.
cities = ['Самара', 'Москва', 'Анапа', 'Новосибирск', 'Архангельск',
'Екатеринбург', 'Александровск']
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

54.

Задание №
5
Из списка городов в предыдущем задании, выберите и сохраните в список uniq_cities только те, где
каждая буква встречается ровно один раз. Например, Москва.
Примечание: буквы, отличающиеся только регистром, считаются одинаковыми. Например, в
названии «Екатеринбург» содержится 2 буквы «е», поэтому этот город под условие не
подойдет.
cities = ['Самара', 'Москва', 'Анапа', 'Новосибирск', 'Архангельск',
'Екатеринбург', 'Александровск']
uniq_cities = [city for city in cities]
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

55.

Задание №
5
Из списка городов в предыдущем задании, выберите и сохраните в список uniq_cities только те, где
каждая буква встречается ровно один раз. Например, Москва.
Примечание: буквы, отличающиеся только регистром, считаются одинаковыми. Например, в
названии «Екатеринбург» содержится 2 буквы «е», поэтому этот город под условие не
подойдет.
cities = ['Самара', 'Москва', 'Анапа', 'Новосибирск', 'Архангельск',
'Екатеринбург', 'Александровск']
uniq_cities = [city for city in cities if len(city) == len(set(city))]
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

56.

Задание №
5
Из списка городов в предыдущем задании, выберите и сохраните в список uniq_cities только те, где
каждая буква встречается ровно один раз. Например, Москва.
Примечание: буквы, отличающиеся только регистром, считаются одинаковыми. Например, в
названии «Екатеринбург» содержится 2 буквы «е», поэтому этот город под условие не
подойдет.
cities = ['Самара', 'Москва', 'Анапа', 'Новосибирск', 'Архангельск',
'Екатеринбург', 'Александровск']
uniq_cities = [city for city in cities if len(city)
== len(set(city.lower()))]
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

57.

Задание №
5
Из списка городов в предыдущем задании, выберите и сохраните в список uniq_cities только те, где
каждая буква встречается ровно один раз. Например, Москва.
Примечание: буквы, отличающиеся только регистром, считаются одинаковыми. Например, в
названии «Екатеринбург» содержится 2 буквы «е», поэтому этот город под условие не
подойдет.
cities = ['Самара', 'Москва', 'Анапа', 'Новосибирск', 'Архангельск',
'Екатеринбург', 'Александровск']
uniq_cities = [city for city in cities if len(city)
== len(set(city.lower()))]
print(uniq_cities)
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

58.

Задание №
5
Из списка городов в предыдущем задании, выберите и сохраните в список uniq_cities только те, где
каждая буква встречается ровно один раз. Например, Москва.
Примечание: буквы, отличающиеся только регистром, считаются одинаковыми. Например, в
названии «Екатеринбург» содержится 2 буквы «е», поэтому этот город под условие не
подойдет.
cities = ['Самара', 'Москва', 'Анапа', 'Новосибирск', 'Архангельск',
'Екатеринбург', 'Александровск']
uniq_cities = [city for city in cities if len(city)
== len(set(city.lower()))]
print(uniq_cities)
>>> ['Москва']
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

59.

Задание №
6
Создайте словарь square_roots, где в качестве ключа выступает натуральное число в диапазоне от 1
до 20 включительно, а в качестве значения – квадратный корень этого числа.
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

60.

Задание №
6
Создайте словарь square_roots, где в качестве ключа выступает натуральное число в диапазоне от 1
до 20 включительно, а в качестве значения – квадратный корень этого числа.
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

61.

Задание №
6
Создайте словарь square_roots, где в качестве ключа выступает натуральное число в диапазоне от 1
до 20 включительно, а в качестве значения – квадратный корень этого числа.
square_roots = {}
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

62.

Задание №
6
Создайте словарь square_roots, где в качестве ключа выступает натуральное число в диапазоне от 1
до 20 включительно, а в качестве значения – квадратный корень этого числа.
square_roots = {}
for num in range(1, 21):
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

63.

Задание №
6
Создайте словарь square_roots, где в качестве ключа выступает натуральное число в диапазоне от 1
до 20 включительно, а в качестве значения – квадратный корень этого числа.
square_roots = {}
for num in range(1, 21):
square_roots[num] =
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

64.

Задание №
6
Создайте словарь square_roots, где в качестве ключа выступает натуральное число в диапазоне от 1
до 20 включительно, а в качестве значения – квадратный корень этого числа.
from math import sqrt
square_roots = {}
for num in range(1, 21):
square_roots[num] =
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

65.

Задание №
6
Создайте словарь square_roots, где в качестве ключа выступает натуральное число в диапазоне от 1
до 20 включительно, а в качестве значения – квадратный корень этого числа.
from math import sqrt
square_roots = {}
for num in range(1, 21):
square_roots[num] = sqrt(num)
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

66.

Задание №
6
Создайте словарь square_roots, где в качестве ключа выступает натуральное число в диапазоне от 1
до 20 включительно, а в качестве значения – квадратный корень этого числа.
square_roots = {}
for num in range(1, 21):
square_roots[num] = num**0.5
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

67.

Задание №
6
Создайте словарь square_roots, где в качестве ключа выступает натуральное число в диапазоне от 1
до 20 включительно, а в качестве значения – квадратный корень этого числа.
square_roots = {}
for num in range(1, 21):
square_roots[num] = num**0.5
print(square_roots)
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

68.

Задание №
6
Создайте словарь square_roots, где в качестве ключа выступает натуральное число в диапазоне от 1
до 20 включительно, а в качестве значения – квадратный корень этого числа.
square_roots = {for num in range(1, 21)}
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

69.

Задание №
6
Создайте словарь square_roots, где в качестве ключа выступает натуральное число в диапазоне от 1
до 20 включительно, а в качестве значения – квадратный корень этого числа.
square_roots = {num:num**0.5 for num in range(1, 21)}
print(square_roots)
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

70.

Задание №
6
Создайте словарь square_roots, где в качестве ключа выступает натуральное число в диапазоне от 1
до 20 включительно, а в качестве значения – квадратный корень этого числа.
square_roots = {num:num**0.5 for num in range(1, 21) if num % 2 == 0}
print(square_roots)
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

71.

Теория
Генераторы словарей
{ключ:значение for переменная in последовательность if условие}
переменная – имя переменной, которую мы обычно объявляем в цикле for
последовательность – откуда берем элементы для сохранения в словарь
(например, функция range())
ключ:значение – непосредственно объект словаря (пара «ключ-значение»),
который будет сохранен в словарь (чаще всего основывается на переменной)
условие - критерий, по которому отбираются элементы в словарь
(выглядит как классический условный оператор if)
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

72.

Задание №
7
«Переоценка фруктов»
В магазине продуктов, в отделе с фруктами происходит переоценка – цена за килограмм для
каждой позиции увеличивается на 20%. Необходимо вычислить новые цены фруктов за килограмм.
В программе хранится словарь fruits, где ключ – это название фрукта, а значение – это текущая
цена фрукта. Необходимо создать словарь fruits_new с пересчитанными ценами.
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

73.

Задание №
7
«Переоценка фруктов»
В магазине продуктов, в отделе с фруктами происходит переоценка – цена за килограмм для
каждой позиции увеличивается на 20%. Необходимо вычислить новые цены фруктов за килограмм.
В программе хранится словарь fruits, где ключ – это название фрукта, а значение – это текущая
цена фрукта. Необходимо создать словарь fruits_new с пересчитанными ценами.
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

74.

Задание №
7
«Переоценка фруктов»
В магазине продуктов, в отделе с фруктами происходит переоценка – цена за килограмм для
каждой позиции увеличивается на 20%. Необходимо вычислить новые цены фруктов за килограмм.
В программе хранится словарь fruits, где ключ – это название фрукта, а значение – это текущая
цена фрукта. Необходимо создать словарь fruits_new с пересчитанными ценами.
fruits = {
'Персики': 150,
'Яблоки': 100,
'Бананы': 140,
'Лимоны': 200,
'Авокадо': 450
}
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

75.

Задание №
7
«Переоценка фруктов»
В магазине продуктов, в отделе с фруктами происходит переоценка – цена за килограмм для
каждой позиции увеличивается на 20%. Необходимо вычислить новые цены фруктов за килограмм.
В программе хранится словарь fruits, где ключ – это название фрукта, а значение – это текущая
цена фрукта. Необходимо создать словарь fruits_new с пересчитанными ценами.
fruits = {
'Персики': 150,
'Яблоки': 100,
'Бананы': 140,
'Лимоны': 200,
'Авокадо': 450
}
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

76.

Задание №
7
«Переоценка фруктов»
В магазине продуктов, в отделе с фруктами происходит переоценка – цена за килограмм для
каждой позиции увеличивается на 20%. Необходимо вычислить новые цены фруктов за килограмм.
В программе хранится словарь fruits, где ключ – это название фрукта, а значение – это текущая
цена фрукта. Необходимо создать словарь fruits_new с пересчитанными ценами.
fruits = {
'Персики': 150,
'Яблоки': 100,
'Бананы': 140,
'Лимоны': 200,
'Авокадо': 450
}
fruits_new = {}
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

77.

Задание №
7
«Переоценка фруктов»
В магазине продуктов, в отделе с фруктами происходит переоценка – цена за килограмм для
каждой позиции увеличивается на 20%. Необходимо вычислить новые цены фруктов за килограмм.
В программе хранится словарь fruits, где ключ – это название фрукта, а значение – это текущая
цена фрукта. Необходимо создать словарь fruits_new с пересчитанными ценами.
fruits = {
'Персики': 150,
'Яблоки': 100,
'Бананы': 140,
'Лимоны': 200,
'Авокадо': 450
}
fruits_new = {for fruit, price in fruits.items()}
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

78.

Задание №
7
«Переоценка фруктов»
В магазине продуктов, в отделе с фруктами происходит переоценка – цена за килограмм для
каждой позиции увеличивается на 20%. Необходимо вычислить новые цены фруктов за килограмм.
В программе хранится словарь fruits, где ключ – это название фрукта, а значение – это текущая
цена фрукта. Необходимо создать словарь fruits_new с пересчитанными ценами.
fruits = {
'Персики': 150,
'Яблоки': 100,
'Бананы': 140,
'Лимоны': 200,
'Авокадо': 450
}
fruits_new = {fruit: for fruit, price in fruits.items()}
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

79.

Задание №
7
«Переоценка фруктов»
В магазине продуктов, в отделе с фруктами происходит переоценка – цена за килограмм для
каждой позиции увеличивается на 20%. Необходимо вычислить новые цены фруктов за килограмм.
В программе хранится словарь fruits, где ключ – это название фрукта, а значение – это текущая
цена фрукта. Необходимо создать словарь fruits_new с пересчитанными ценами.
fruits = {
'Персики': 150,
'Яблоки': 100,
'Бананы': 140,
'Лимоны': 200,
'Авокадо': 450
}
fruits_new = {fruit:price * 1.2 for fruit, price in fruits.items()}
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

80.

Задание №
7
«Переоценка фруктов»
В магазине продуктов, в отделе с фруктами происходит переоценка – цена за килограмм для
каждой позиции увеличивается на 20%. Необходимо вычислить новые цены фруктов за килограмм.
В программе хранится словарь fruits, где ключ – это название фрукта, а значение – это текущая
цена фрукта. Необходимо создать словарь fruits_new с пересчитанными ценами.
fruits = {
'Персики': 150,
'Яблоки': 100,
'Бананы': 140,
'Лимоны': 200,
'Авокадо': 450
}
fruits_new = {fruit:price * 1.2 for fruit, price in fruits.items()}
print(fruits_new)
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

81.

Задание №
7
«Переоценка фруктов»
В магазине продуктов, в отделе с фруктами происходит переоценка – цена за килограмм для
каждой позиции увеличивается на 20%. Необходимо вычислить новые цены фруктов за килограмм.
В программе хранится словарь fruits, где ключ – это название фрукта, а значение – это текущая
цена фрукта. Необходимо создать словарь fruits_new с пересчитанными ценами.
fruits = {
'Персики': 150,
'Яблоки': 100,
'Бананы': 140,
'Лимоны': 200,
'Авокадо': 450
}
fruits_new = {fruit:price * 1.2 for fruit, price in fruits.items()}
print(fruits_new)
>>> {'Персики': 180.0, 'Яблоки': 120.0, 'Бананы': 168.0,
'Лимоны': 240.0, 'Авокадо': 540.0}
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

82.

Задание №
8
«Фрагмент таблицы умножения»
На вход с клавиатуры подается натуральное число N в диапазоне от 1 до 9 включительно. Создайте
двумерный список, где будет храниться фрагмент таблицы умножения для чисел от 1 до N
включительно.
Например, при N = 3 программа должна сгенерировать список со следующими значениями:
[1, 2, 3],
[2, 4, 6],
[3, 6, 9]
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

83.

Задание №
8
«Фрагмент таблицы умножения»
На вход с клавиатуры подается натуральное число N в диапазоне от 1 до 9 включительно. Создайте
двумерный список, где будет храниться фрагмент таблицы умножения для чисел от 1 до N
включительно.
Например, при N = 3 программа должна сгенерировать список со следующими значениями:
[1, 2, 3],
[2, 4, 6],
[3, 6, 9]
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

84.

Задание №
8
«Фрагмент таблицы умножения»
На вход с клавиатуры подается натуральное число N в диапазоне от 1 до 9 включительно. Создайте
двумерный список, где будет храниться фрагмент таблицы умножения для чисел от 1 до N
включительно.
Например, при N = 3 программа должна сгенерировать список со следующими значениями:
[1, 2, 3],
[2, 4, 6],
[3, 6, 9]
N = int(input())
# вводим размерность таблицы умножения
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

85.

Задание №
8
«Фрагмент таблицы умножения»
На вход с клавиатуры подается натуральное число N в диапазоне от 1 до 9 включительно. Создайте
двумерный список, где будет храниться фрагмент таблицы умножения для чисел от 1 до N
включительно.
Например, при N = 3 программа должна сгенерировать список со следующими значениями:
[1, 2, 3],
[2, 4, 6],
[3, 6, 9]
N = int(input())
table = []
# вводим размерность таблицы умножения
# список для хранения таблицы
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

86.

Задание №
8
«Фрагмент таблицы умножения»
На вход с клавиатуры подается натуральное число N в диапазоне от 1 до 9 включительно. Создайте
двумерный список, где будет храниться фрагмент таблицы умножения для чисел от 1 до N
включительно.
Например, при N = 3 программа должна сгенерировать список со следующими значениями:
[1, 2, 3],
[2, 4, 6],
[3, 6, 9]
N = int(input())
table = []
for i in range(1, N + 1):
# вводим размерность таблицы умножения
# список для хранения таблицы
# перебираем числа от 1 до N (строки таблицы)
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

87.

Задание №
8
«Фрагмент таблицы умножения»
На вход с клавиатуры подается натуральное число N в диапазоне от 1 до 9 включительно. Создайте
двумерный список, где будет храниться фрагмент таблицы умножения для чисел от 1 до N
включительно.
Например, при N = 3 программа должна сгенерировать список со следующими значениями:
[1, 2, 3],
[2, 4, 6],
[3, 6, 9]
N = int(input())
table = []
for i in range(1, N + 1):
line = []
# вводим размерность таблицы умножения
# список для хранения таблицы
# перебираем числа от 1 до N (строки таблицы)
# список для хранения одной строки таблицы
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

88.

Задание №
8
«Фрагмент таблицы умножения»
На вход с клавиатуры подается натуральное число N в диапазоне от 1 до 9 включительно. Создайте
двумерный список, где будет храниться фрагмент таблицы умножения для чисел от 1 до N
включительно.
Например, при N = 3 программа должна сгенерировать список со следующими значениями:
[1, 2, 3],
[2, 4, 6],
[3, 6, 9]
N = int(input())
# вводим размерность таблицы умножения
table = []
# список для хранения таблицы
for i in range(1, N + 1):
# перебираем числа от 1 до N (строки таблицы)
line = []
# список для хранения одной строки таблицы
for j in range(1, N + 1): # перебираем числа от 1 до N (столбцы таблицы)
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

89.

Задание №
8
«Фрагмент таблицы умножения»
На вход с клавиатуры подается натуральное число N в диапазоне от 1 до 9 включительно. Создайте
двумерный список, где будет храниться фрагмент таблицы умножения для чисел от 1 до N
включительно.
Например, при N = 3 программа должна сгенерировать список со следующими значениями:
[1, 2, 3],
[2, 4, 6],
[3, 6, 9]
N = int(input())
# вводим размерность таблицы умножения
table = []
# список для хранения таблицы
for i in range(1, N + 1):
# перебираем числа от 1 до N (строки таблицы)
line = []
# список для хранения одной строки таблицы
for j in range(1, N + 1): # перебираем числа от 1 до N (столбцы таблицы)
line.append(i * j)
# получаем очередное число, сохраняем в список
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

90.

Задание №
8
«Фрагмент таблицы умножения»
На вход с клавиатуры подается натуральное число N в диапазоне от 1 до 9 включительно. Создайте
двумерный список, где будет храниться фрагмент таблицы умножения для чисел от 1 до N
включительно.
Например, при N = 3 программа должна сгенерировать список со следующими значениями:
[1, 2, 3],
[2, 4, 6],
[3, 6, 9]
N = int(input())
# вводим размерность таблицы умножения
table = []
# список для хранения таблицы
for i in range(1, N + 1):
# перебираем числа от 1 до N (строки таблицы)
line = []
# список для хранения одной строки таблицы
for j in range(1, N + 1): # перебираем числа от 1 до N (столбцы таблицы)
line.append(i * j)
# получаем очередное число, сохраняем в список
table.append(line)
# добавляем готовую строку в двумерный список
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

91.

Задание №
8
«Фрагмент таблицы умножения»
На вход с клавиатуры подается натуральное число N в диапазоне от 1 до 9 включительно. Создайте
двумерный список, где будет храниться фрагмент таблицы умножения для чисел от 1 до N
включительно.
Например, при N = 3 программа должна сгенерировать список со следующими значениями:
[1, 2, 3],
[2, 4, 6],
[3, 6, 9]
N = int(input())
# вводим размерность таблицы умножения
table = []
# список для хранения таблицы
for i in range(1, N + 1):
# перебираем числа от 1 до N (строки таблицы)
line = []
# список для хранения одной строки таблицы
for j in range(1, N + 1): # перебираем числа от 1 до N (столбцы таблицы)
line.append(i * j)
# получаем очередное число, сохраняем в список
table.append(line)
# добавляем готовую строку в двумерный список
for line in table:
# проходимся по итоговому двумерному списку
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

92.

Задание №
8
«Фрагмент таблицы умножения»
На вход с клавиатуры подается натуральное число N в диапазоне от 1 до 9 включительно. Создайте
двумерный список, где будет храниться фрагмент таблицы умножения для чисел от 1 до N
включительно.
Например, при N = 3 программа должна сгенерировать список со следующими значениями:
[1, 2, 3],
[2, 4, 6],
[3, 6, 9]
N = int(input())
# вводим размерность таблицы умножения
table = []
# список для хранения таблицы
for i in range(1, N + 1):
# перебираем числа от 1 до N (строки таблицы)
line = []
# список для хранения одной строки таблицы
for j in range(1, N + 1): # перебираем числа от 1 до N (столбцы таблицы)
line.append(i * j)
# получаем очередное число, сохраняем в список
table.append(line)
# добавляем готовую строку в двумерный список
for line in table:
print(line)
# проходимся по итоговому двумерному списку
# выводим очередную строку таблицы на экран
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

93.

Задание №
8
«Фрагмент таблицы умножения»
На вход с клавиатуры подается натуральное число N в диапазоне от 1 до 9 включительно. Создайте
двумерный список, где будет храниться фрагмент таблицы умножения для чисел от 1 до N
включительно.
Например, при N = 3 программа должна сгенерировать список со следующими значениями:
[1, 2, 3],
[2, 4, 6],
[3, 6, 9]
N = int(input())
table = [for i in range(1, N + 1)]
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

94.

Задание №
8
«Фрагмент таблицы умножения»
На вход с клавиатуры подается натуральное число N в диапазоне от 1 до 9 включительно. Создайте
двумерный список, где будет храниться фрагмент таблицы умножения для чисел от 1 до N
включительно.
Например, при N = 3 программа должна сгенерировать список со следующими значениями:
[1, 2, 3],
[2, 4, 6],
[3, 6, 9]
N = int(input())
table = [[for j in range(1, N + 1)] for i in range(1, N + 1)]
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

95.

Задание №
8
«Фрагмент таблицы умножения»
На вход с клавиатуры подается натуральное число N в диапазоне от 1 до 9 включительно. Создайте
двумерный список, где будет храниться фрагмент таблицы умножения для чисел от 1 до N
включительно.
Например, при N = 3 программа должна сгенерировать список со следующими значениями:
[1, 2, 3],
[2, 4, 6],
[3, 6, 9]
N = int(input())
table = [[i * j for j in range(1, N + 1)] for i in range(1, N + 1)]
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

96.

Задание №
9
«Числа и их делители»
На вход с клавиатуры подаются два натуральных числа N и M, где M > N. Необходимо создать
словарь, где в качестве ключей будут сами числа в диапазоне от N до M включительно, а в качестве
значений будут храниться все натуральные делители (не считая 1 и самого число) для каждого
конкретного числа. Если у числа нет натуральных делителей, отличных от 1 и самого числа, то
данное число не сохраняется в словарь.
Например, если N = 4, а M = 10, то программа должна сохранить в словарь следующие числа и их
делители:
4: 2
6: 2, 3
8: 2, 4
9: 3
10: 2, 5
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

97.

Задание №
9
«Числа и их делители»
На вход с клавиатуры подаются два натуральных числа N и M, где M > N. Необходимо создать
словарь, где в качестве ключей будут сами числа в диапазоне от N до M включительно, а в качестве
значений будут храниться все натуральные делители (не считая 1 и самого число) для каждого
конкретного числа. Если у числа нет натуральных делителей, отличных от 1 и самого числа, то
данное число не сохраняется в словарь.
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

98.

Задание №
9
«Числа и их делители»
На вход с клавиатуры подаются два натуральных числа N и M, где M > N. Необходимо создать
словарь, где в качестве ключей будут сами числа в диапазоне от N до M включительно, а в качестве
значений будут храниться все натуральные делители (не считая 1 и самого число) для каждого
конкретного числа. Если у числа нет натуральных делителей, отличных от 1 и самого числа, то
данное число не сохраняется в словарь.
def get_divisors(n):
# функция для поиска делителей
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

99.

Задание №
9
«Числа и их делители»
На вход с клавиатуры подаются два натуральных числа N и M, где M > N. Необходимо создать
словарь, где в качестве ключей будут сами числа в диапазоне от N до M включительно, а в качестве
значений будут храниться все натуральные делители (не считая 1 и самого число) для каждого
конкретного числа. Если у числа нет натуральных делителей, отличных от 1 и самого числа, то
данное число не сохраняется в словарь.
def get_divisors(n):
# функция для поиска делителей
divisors = []
# список для хранения делителей
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

100.

Задание №
9
«Числа и их делители»
На вход с клавиатуры подаются два натуральных числа N и M, где M > N. Необходимо создать
словарь, где в качестве ключей будут сами числа в диапазоне от N до M включительно, а в качестве
значений будут храниться все натуральные делители (не считая 1 и самого число) для каждого
конкретного числа. Если у числа нет натуральных делителей, отличных от 1 и самого числа, то
данное число не сохраняется в словарь.
def get_divisors(n):
# функция для поиска делителей
divisors = []
# список для хранения делителей
for div in range(2, n // 2 + 1): # перебираем делители от 2 до половины числа
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

101.

Задание №
9
«Числа и их делители»
На вход с клавиатуры подаются два натуральных числа N и M, где M > N. Необходимо создать
словарь, где в качестве ключей будут сами числа в диапазоне от N до M включительно, а в качестве
значений будут храниться все натуральные делители (не считая 1 и самого число) для каждого
конкретного числа. Если у числа нет натуральных делителей, отличных от 1 и самого числа, то
данное число не сохраняется в словарь.
def get_divisors(n):
# функция для поиска делителей
divisors = []
# список для хранения делителей
for div in range(2, n // 2 + 1): # перебираем делители от 2 до половины числа
if n % div == 0:
# если нашли делитель
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

102.

Задание №
9
«Числа и их делители»
На вход с клавиатуры подаются два натуральных числа N и M, где M > N. Необходимо создать
словарь, где в качестве ключей будут сами числа в диапазоне от N до M включительно, а в качестве
значений будут храниться все натуральные делители (не считая 1 и самого число) для каждого
конкретного числа. Если у числа нет натуральных делителей, отличных от 1 и самого числа, то
данное число не сохраняется в словарь.
def get_divisors(n):
# функция для поиска делителей
divisors = []
# список для хранения делителей
for div in range(2, n // 2 + 1): # перебираем делители от 2 до половины числа
if n % div == 0:
divisors.append(div)
# если нашли делитель
# добавляем делитель в список
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

103.

Задание №
9
«Числа и их делители»
На вход с клавиатуры подаются два натуральных числа N и M, где M > N. Необходимо создать
словарь, где в качестве ключей будут сами числа в диапазоне от N до M включительно, а в качестве
значений будут храниться все натуральные делители (не считая 1 и самого число) для каждого
конкретного числа. Если у числа нет натуральных делителей, отличных от 1 и самого числа, то
данное число не сохраняется в словарь.
def get_divisors(n):
# функция для поиска делителей
divisors = []
# список для хранения делителей
for div in range(2, n // 2 + 1): # перебираем делители от 2 до половины числа
if n % div == 0:
divisors.append(div)
return divisors
# если нашли делитель
# добавляем делитель в список
# возвращаем список с делителями
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

104.

Задание №
9
«Числа и их делители»
На вход с клавиатуры подаются два натуральных числа N и M, где M > N. Необходимо создать
словарь, где в качестве ключей будут сами числа в диапазоне от N до M включительно, а в качестве
значений будут храниться все натуральные делители (не считая 1 и самого число) для каждого
конкретного числа. Если у числа нет натуральных делителей, отличных от 1 и самого числа, то
данное число не сохраняется в словарь.
def get_divisors(n):
# функция для поиска делителей
divisors = []
# список для хранения делителей
for div in range(2, n // 2 + 1): # перебираем делители от 2 до половины числа
if n % div == 0:
divisors.append(div)
return divisors
N, M = int(input()), int(input())
# если нашли делитель
# добавляем делитель в список
# возвращаем список с делителями
# вводим числа N и M
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

105.

Задание №
9
«Числа и их делители»
На вход с клавиатуры подаются два натуральных числа N и M, где M > N. Необходимо создать
словарь, где в качестве ключей будут сами числа в диапазоне от N до M включительно, а в качестве
значений будут храниться все натуральные делители (не считая 1 и самого число) для каждого
конкретного числа. Если у числа нет натуральных делителей, отличных от 1 и самого числа, то
данное число не сохраняется в словарь.
def get_divisors(n):
# функция для поиска делителей
divisors = []
# список для хранения делителей
for div in range(2, n // 2 + 1): # перебираем делители от 2 до половины числа
if n % div == 0:
divisors.append(div)
return divisors
N, M = int(input()), int(input())
# если нашли делитель
# добавляем делитель в список
# возвращаем список с делителями
# вводим числа N и M
# словарь, где ключ – число, значение – список делителей числа
nums_and_divs = {}
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

106.

Задание №
9
«Числа и их делители»
На вход с клавиатуры подаются два натуральных числа N и M, где M > N. Необходимо создать
словарь, где в качестве ключей будут сами числа в диапазоне от N до M включительно, а в качестве
значений будут храниться все натуральные делители (не считая 1 и самого число) для каждого
конкретного числа. Если у числа нет натуральных делителей, отличных от 1 и самого числа, то
данное число не сохраняется в словарь.
def get_divisors(n):
# функция для поиска делителей
divisors = []
# список для хранения делителей
for div in range(2, n // 2 + 1): # перебираем делители от 2 до половины числа
if n % div == 0:
divisors.append(div)
return divisors
N, M = int(input()), int(input())
# если нашли делитель
# добавляем делитель в список
# возвращаем список с делителями
# вводим числа N и M
# словарь, где ключ – число, значение – список делителей числа
nums_and_divs = {for num in range(N, M + 1)}
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

107.

Задание №
9
«Числа и их делители»
На вход с клавиатуры подаются два натуральных числа N и M, где M > N. Необходимо создать
словарь, где в качестве ключей будут сами числа в диапазоне от N до M включительно, а в качестве
значений будут храниться все натуральные делители (не считая 1 и самого число) для каждого
конкретного числа. Если у числа нет натуральных делителей, отличных от 1 и самого числа, то
данное число не сохраняется в словарь.
def get_divisors(n):
# функция для поиска делителей
divisors = []
# список для хранения делителей
for div in range(2, n // 2 + 1): # перебираем делители от 2 до половины числа
if n % div == 0:
divisors.append(div)
return divisors
N, M = int(input()), int(input())
# если нашли делитель
# добавляем делитель в список
# возвращаем список с делителями
# вводим числа N и M
# словарь, где ключ – число, значение – список делителей числа
nums_and_divs = {num:get_divisors(num) for num in range(N, M + 1)}
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

108.

Задание №
9
«Числа и их делители»
На вход с клавиатуры подаются два натуральных числа N и M, где M > N. Необходимо создать
словарь, где в качестве ключей будут сами числа в диапазоне от N до M включительно, а в качестве
значений будут храниться все натуральные делители (не считая 1 и самого число) для каждого
конкретного числа. Если у числа нет натуральных делителей, отличных от 1 и самого числа, то
данное число не сохраняется в словарь.
def get_divisors(n):
# функция для поиска делителей
divisors = []
# список для хранения делителей
for div in range(2, n // 2 + 1): # перебираем делители от 2 до половины числа
if n % div == 0:
divisors.append(div)
return divisors
N, M = int(input()), int(input())
# если нашли делитель
# добавляем делитель в список
# возвращаем список с делителями
# вводим числа N и M
# словарь, где ключ – число, значение – список делителей числа
nums_and_divs = {num:get_divisors(num) for num in range(N, M + 1) if
len(get_divisors(num)) > 0}
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

109.

Задание №
9
«Числа и их делители»
На вход с клавиатуры подаются два натуральных числа N и M, где M > N. Необходимо создать
словарь, где в качестве ключей будут сами числа в диапазоне от N до M включительно, а в качестве
значений будут храниться все натуральные делители (не считая 1 и самого число) для каждого
конкретного числа. Если у числа нет натуральных делителей, отличных от 1 и самого числа, то
данное число не сохраняется в словарь.
def get_divisors(n):
# функция для поиска делителей
...
N, M = int(input()), int(input()) # вводим числа N и M
# словарь, где ключ – число, значение – список делителей числа
nums_and_divs = {num:get_divisors(num) for num in range(N, M + 1) if
len(get_divisors(num)) > 0}
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

110.

Задание №
9
«Числа и их делители»
На вход с клавиатуры подаются два натуральных числа N и M, где M > N. Необходимо создать
словарь, где в качестве ключей будут сами числа в диапазоне от N до M включительно, а в качестве
значений будут храниться все натуральные делители (не считая 1 и самого число) для каждого
конкретного числа. Если у числа нет натуральных делителей, отличных от 1 и самого числа, то
данное число не сохраняется в словарь.
from time import time
# импортируем функцию для работы со временем работы программы
def get_divisors(n):
# функция для поиска делителей
...
N, M = int(input()), int(input()) # вводим числа N и M
# словарь, где ключ – число, значение – список делителей числа
nums_and_divs = {num:get_divisors(num) for num in range(N, M + 1) if
len(get_divisors(num)) > 0}
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

111.

Задание №
9
«Числа и их делители»
На вход с клавиатуры подаются два натуральных числа N и M, где M > N. Необходимо создать
словарь, где в качестве ключей будут сами числа в диапазоне от N до M включительно, а в качестве
значений будут храниться все натуральные делители (не считая 1 и самого число) для каждого
конкретного числа. Если у числа нет натуральных делителей, отличных от 1 и самого числа, то
данное число не сохраняется в словарь.
from time import time
# импортируем функцию для работы со временем работы программы
def get_divisors(n):
# функция для поиска делителей
...
N, M = int(input()), int(input()) # вводим числа N и M
start = time()
# начальная временная метка
# словарь, где ключ – число, значение – список делителей числа
nums_and_divs = {num:get_divisors(num) for num in range(N, M + 1) if
len(get_divisors(num)) > 0}
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

112.

Задание №
9
«Числа и их делители»
На вход с клавиатуры подаются два натуральных числа N и M, где M > N. Необходимо создать
словарь, где в качестве ключей будут сами числа в диапазоне от N до M включительно, а в качестве
значений будут храниться все натуральные делители (не считая 1 и самого число) для каждого
конкретного числа. Если у числа нет натуральных делителей, отличных от 1 и самого числа, то
данное число не сохраняется в словарь.
from time import time
# импортируем функцию для работы со временем работы программы
def get_divisors(n):
# функция для поиска делителей
...
N, M = int(input()), int(input()) # вводим числа N и M
start = time()
# начальная временная метка
# словарь, где ключ – число, значение – список делителей числа
nums_and_divs = {num:get_divisors(num) for num in range(N, M + 1) if
len(get_divisors(num)) > 0}
stop = time()
# конечная временная метка
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

113.

Задание №
9
«Числа и их делители»
На вход с клавиатуры подаются два натуральных числа N и M, где M > N. Необходимо создать
словарь, где в качестве ключей будут сами числа в диапазоне от N до M включительно, а в качестве
значений будут храниться все натуральные делители (не считая 1 и самого число) для каждого
конкретного числа. Если у числа нет натуральных делителей, отличных от 1 и самого числа, то
данное число не сохраняется в словарь.
from time import time
# импортируем функцию для работы со временем работы программы
def get_divisors(n):
# функция для поиска делителей
...
N, M = int(input()), int(input()) # вводим числа N и M
start = time()
# начальная временная метка
# словарь, где ключ – число, значение – список делителей числа
nums_and_divs = {num:get_divisors(num) for num in range(N, M + 1) if
len(get_divisors(num)) > 0}
stop = time()
# конечная временная метка
print(f'Программа работала {stop - start} секунд') # выводим время генерации словаря
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

114.

Задание №
9
«Числа и их делители»
На вход с клавиатуры подаются два натуральных числа N и M, где M > N. Необходимо создать
словарь, где в качестве ключей будут сами числа в диапазоне от N до M включительно, а в качестве
значений будут храниться все натуральные делители (не считая 1 и самого число) для каждого
конкретного числа. Если у числа нет натуральных делителей, отличных от 1 и самого числа, то
данное число не сохраняется в словарь.
from time import time
# импортируем функцию для работы со временем работы программы
def get_divisors(n):
# функция для поиска делителей
...
N, M = int(input()), int(input()) # вводим числа N и M
start = time()
# начальная временная метка
# словарь, где ключ – число, значение – список делителей числа
nums_and_divs = {num:get_divisors(num) for num in range(N, M + 1) if
len(get_divisors(num)) > 0}
stop = time()
# конечная временная метка
print(f'Программа работала {stop - start} секунд') # выводим время генерации словаря
>>> Программа работала 3.1191296577453613 секунд
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

115.

Задание №
9
«Числа и их делители»
На вход с клавиатуры подаются два натуральных числа N и M, где M > N. Необходимо создать
словарь, где в качестве ключей будут сами числа в диапазоне от N до M включительно, а в качестве
значений будут храниться все натуральные делители (не считая 1 и самого число) для каждого
конкретного числа. Если у числа нет натуральных делителей, отличных от 1 и самого числа, то
данное число не сохраняется в словарь.
from time import time
# импортируем функцию для работы со временем работы программы
def get_divisors(n):
# функция для поиска делителей
...
N, M = int(input()), int(input()) # вводим числа N и M
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

116.

Задание №
9
«Числа и их делители»
На вход с клавиатуры подаются два натуральных числа N и M, где M > N. Необходимо создать
словарь, где в качестве ключей будут сами числа в диапазоне от N до M включительно, а в качестве
значений будут храниться все натуральные делители (не считая 1 и самого число) для каждого
конкретного числа. Если у числа нет натуральных делителей, отличных от 1 и самого числа, то
данное число не сохраняется в словарь.
from time import time
# импортируем функцию для работы со временем работы программы
def get_divisors(n):
# функция для поиска делителей
...
N, M = int(input()), int(input()) # вводим числа N и M
nums_and_divs = {}
# словарь, где ключ – число, значение – список делителей числа
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

117.

Задание №
9
«Числа и их делители»
На вход с клавиатуры подаются два натуральных числа N и M, где M > N. Необходимо создать
словарь, где в качестве ключей будут сами числа в диапазоне от N до M включительно, а в качестве
значений будут храниться все натуральные делители (не считая 1 и самого число) для каждого
конкретного числа. Если у числа нет натуральных делителей, отличных от 1 и самого числа, то
данное число не сохраняется в словарь.
from time import time
# импортируем функцию для работы со временем работы программы
def get_divisors(n):
# функция для поиска делителей
...
N, M = int(input()), int(input()) # вводим числа N и M
nums_and_divs = {}
# словарь, где ключ – число, значение – список делителей числа
for num in range(N, M + 1):
# перебираем числа от N до M включительно
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

118.

Задание №
9
«Числа и их делители»
На вход с клавиатуры подаются два натуральных числа N и M, где M > N. Необходимо создать
словарь, где в качестве ключей будут сами числа в диапазоне от N до M включительно, а в качестве
значений будут храниться все натуральные делители (не считая 1 и самого число) для каждого
конкретного числа. Если у числа нет натуральных делителей, отличных от 1 и самого числа, то
данное число не сохраняется в словарь.
from time import time
# импортируем функцию для работы со временем работы программы
def get_divisors(n):
# функция для поиска делителей
...
N, M = int(input()), int(input()) # вводим числа N и M
nums_and_divs = {}
# словарь, где ключ – число, значение – список делителей числа
for num in range(N, M + 1):
# перебираем числа от N до M включительно
divs = get_divisors(num)
# получаем список делителей числа
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

119.

Задание №
9
«Числа и их делители»
На вход с клавиатуры подаются два натуральных числа N и M, где M > N. Необходимо создать
словарь, где в качестве ключей будут сами числа в диапазоне от N до M включительно, а в качестве
значений будут храниться все натуральные делители (не считая 1 и самого число) для каждого
конкретного числа. Если у числа нет натуральных делителей, отличных от 1 и самого числа, то
данное число не сохраняется в словарь.
from time import time
# импортируем функцию для работы со временем работы программы
def get_divisors(n):
# функция для поиска делителей
...
N, M = int(input()), int(input()) # вводим числа N и M
nums_and_divs = {}
# словарь, где ключ – число, значение – список делителей числа
for num in range(N, M + 1):
# перебираем числа от N до M включительно
divs = get_divisors(num)
# получаем список делителей числа
if len(divs) > 0:
# если в списке есть хотя бы один делитель
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

120.

Задание №
9
«Числа и их делители»
На вход с клавиатуры подаются два натуральных числа N и M, где M > N. Необходимо создать
словарь, где в качестве ключей будут сами числа в диапазоне от N до M включительно, а в качестве
значений будут храниться все натуральные делители (не считая 1 и самого число) для каждого
конкретного числа. Если у числа нет натуральных делителей, отличных от 1 и самого числа, то
данное число не сохраняется в словарь.
from time import time
# импортируем функцию для работы со временем работы программы
def get_divisors(n):
# функция для поиска делителей
...
N, M = int(input()), int(input()) # вводим числа N и M
nums_and_divs = {}
# словарь, где ключ – число, значение – список делителей числа
for num in range(N, M + 1):
# перебираем числа от N до M включительно
divs = get_divisors(num)
# получаем список делителей числа
if len(divs) > 0:
# если в списке есть хотя бы один делитель
nums_and_divs[num] = divs # добавляем новый объект в словарь
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

121.

Задание №
9
«Числа и их делители»
На вход с клавиатуры подаются два натуральных числа N и M, где M > N. Необходимо создать
словарь, где в качестве ключей будут сами числа в диапазоне от N до M включительно, а в качестве
значений будут храниться все натуральные делители (не считая 1 и самого число) для каждого
конкретного числа. Если у числа нет натуральных делителей, отличных от 1 и самого числа, то
данное число не сохраняется в словарь.
from time import time
# импортируем функцию для работы со временем работы программы
def get_divisors(n):
# функция для поиска делителей
...
N, M = int(input()), int(input()) # вводим числа N и M
start = time()
# начальная временная метка
nums_and_divs = {}
# словарь, где ключ – число, значение – список делителей числа
for num in range(N, M + 1):
# перебираем числа от N до M включительно
divs = get_divisors(num)
# получаем список делителей числа
if len(divs) > 0:
# если в списке есть хотя бы один делитель
nums_and_divs[num] = divs # добавляем новый объект в словарь
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

122.

Задание №
9
«Числа и их делители»
На вход с клавиатуры подаются два натуральных числа N и M, где M > N. Необходимо создать
словарь, где в качестве ключей будут сами числа в диапазоне от N до M включительно, а в качестве
значений будут храниться все натуральные делители (не считая 1 и самого число) для каждого
конкретного числа. Если у числа нет натуральных делителей, отличных от 1 и самого числа, то
данное число не сохраняется в словарь.
from time import time
# импортируем функцию для работы со временем работы программы
def get_divisors(n):
# функция для поиска делителей
...
N, M = int(input()), int(input()) # вводим числа N и M
start = time()
# начальная временная метка
nums_and_divs = {}
# словарь, где ключ – число, значение – список делителей числа
for num in range(N, M + 1):
# перебираем числа от N до M включительно
divs = get_divisors(num)
# получаем список делителей числа
if len(divs) > 0:
# если в списке есть хотя бы один делитель
nums_and_divs[num] = divs # добавляем новый объект в словарь
stop = time()
# конечная временная метка
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

123.

Задание №
9
«Числа и их делители»
На вход с клавиатуры подаются два натуральных числа N и M, где M > N. Необходимо создать
словарь, где в качестве ключей будут сами числа в диапазоне от N до M включительно, а в качестве
значений будут храниться все натуральные делители (не считая 1 и самого число) для каждого
конкретного числа. Если у числа нет натуральных делителей, отличных от 1 и самого числа, то
данное число не сохраняется в словарь.
from time import time
# импортируем функцию для работы со временем работы программы
def get_divisors(n):
# функция для поиска делителей
...
N, M = int(input()), int(input()) # вводим числа N и M
start = time()
# начальная временная метка
nums_and_divs = {}
# словарь, где ключ – число, значение – список делителей числа
for num in range(N, M + 1):
# перебираем числа от N до M включительно
divs = get_divisors(num)
# получаем список делителей числа
if len(divs) > 0:
# если в списке есть хотя бы один делитель
nums_and_divs[num] = divs # добавляем новый объект в словарь
stop = time()
# конечная временная метка
print(f'Программа работала {stop - start} секунд') # выводим время генерации словаря
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

124.

Задание №
9
«Числа и их делители»
На вход с клавиатуры подаются два натуральных числа N и M, где M > N. Необходимо создать
словарь, где в качестве ключей будут сами числа в диапазоне от N до M включительно, а в качестве
значений будут храниться все натуральные делители (не считая 1 и самого число) для каждого
конкретного числа. Если у числа нет натуральных делителей, отличных от 1 и самого числа, то
данное число не сохраняется в словарь.
from time import time
# импортируем функцию для работы со временем работы программы
def get_divisors(n):
# функция для поиска делителей
...
N, M = int(input()), int(input()) # вводим числа N и M
start = time()
# начальная временная метка
nums_and_divs = {}
# словарь, где ключ – число, значение – список делителей числа
for num in range(N, M + 1):
# перебираем числа от N до M включительно
divs = get_divisors(num)
# получаем список делителей числа
if len(divs) > 0:
# если в списке есть хотя бы один делитель
nums_and_divs[num] = divs # добавляем новый объект в словарь
stop = time()
# конечная временная метка
print(f'Программа работала {stop - start} секунд') # выводим время генерации словаря
>>> Программа работала 1.7192788124084473 секунд
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

125.

ИТОГ
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

126.

ИТОГ
Для чего используются генераторы списков и словарей?
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

127.

ИТОГ
Для чего используются генераторы списков и словарей?
Для создания списков и словарей с помощью более компактного синтаксиса
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

128.

ИТОГ
Для чего используются генераторы списков и словарей?
Для создания списков и словарей с помощью более компактного синтаксиса
Какой общий вид генератора списков?
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

129.

ИТОГ
Для чего используются генераторы списков и словарей?
Для создания списков и словарей с помощью более компактного синтаксиса
Какой общий вид генератора списков?
[выражение for переменная in последовательность if условие]
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

130.

ИТОГ
Для чего используются генераторы списков и словарей?
Для создания списков и словарей с помощью более компактного синтаксиса
Какой общий вид генератора списков?
[выражение for переменная in последовательность if условие]
Какой общий вид генератора словарей?
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

131.

ИТОГ
Для чего используются генераторы списков и словарей?
Для создания списков и словарей с помощью более компактного синтаксиса
Какой общий вид генератора списков?
[выражение for переменная in последовательность if условие]
Какой общий вид генератора словарей?
[ключ:значение for переменная in последовательность if условие]
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

132.

ИТОГ
Для чего используются генераторы списков и словарей?
Для создания списков и словарей с помощью более компактного синтаксиса
Какой общий вид генератора списков?
[выражение for переменная in последовательность if условие]
Какой общий вид генератора словарей?
[ключ:значение for переменная in последовательность if условие]
Можно ли использовать генераторные выражения для создания
вложенных структур данных?
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

133.

ИТОГ
Для чего используются генераторы списков и словарей?
Для создания списков и словарей с помощью более компактного синтаксиса
Какой общий вид генератора списков?
[выражение for переменная in последовательность if условие]
Какой общий вид генератора словарей?
[ключ:значение for переменная in последовательность if условие]
Можно ли использовать генераторные выражения для создания
вложенных структур данных?
Да, можно
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

134.

ИТОГ
Для чего используются генераторы списков и словарей?
Для создания списков и словарей с помощью более компактного синтаксиса
Какой общий вид генератора списков?
[выражение for переменная in последовательность if условие]
Какой общий вид генератора словарей?
[ключ:значение for переменная in последовательность if условие]
Можно ли использовать генераторные выражения для создания
вложенных структур данных?
Да, можно
Когда не следует использовать генераторы списков и словарей?
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

135.

ИТОГ
Для чего используются генераторы списков и словарей?
Для создания списков и словарей с помощью более компактного синтаксиса
Какой общий вид генератора списков?
[выражение for переменная in последовательность if условие]
Какой общий вид генератора словарей?
[ключ:значение for переменная in последовательность if условие]
Можно ли использовать генераторные выражения для создания
вложенных структур данных?
Да, можно
Когда не следует использовать генераторы списков и словарей?
Когда выражение с генератором получается слишком большим и
неудобным для чтения;
Когда при генерации происходят лишние операции, которые можно
избежать через «классический» код с циклом for.
©2023 ООО «Юмакс». Все права защищены. Любое использование материалов допускается только с письменного согласия компании

136.

DS
Программирование
Python
Спасибо за внимание!
English     Русский Rules