Хэширование
Хэш — это целое число фиксированного размера, которое идентифицирует определенное значение. Каждое уникальное значение должно иметь свой собственный хэш.
Для хэширования значений есть встроенная функция
Но изменяемые объекты по типу списков и словарей нельзя хэшировать — интерпретатор выбросит соответствующую ошибку.
Здесь, кстати, есть две пасхалки. Хэш бесконечности равен перым цифрам числа Пи, а хэш Not a Number равен нулю.
А еще случаются коллизии: например, хэши чисел -1 и -2 одинаковы.
#hash
Хэш — это целое число фиксированного размера, которое идентифицирует определенное значение. Каждое уникальное значение должно иметь свой собственный хэш.
Для хэширования значений есть встроенная функция
hash()
. Используется она в основном для сравнения значений разных объектов — сравнивать хэши легче и выгоднее.Но изменяемые объекты по типу списков и словарей нельзя хэшировать — интерпретатор выбросит соответствующую ошибку.
Здесь, кстати, есть две пасхалки. Хэш бесконечности равен перым цифрам числа Пи, а хэш Not a Number равен нулю.
А еще случаются коллизии: например, хэши чисел -1 и -2 одинаковы.
#hash
Анонимные функции
Короткая запись простой функции, необходимая для решения одной конкретной задачи удобная вещь. Дабы не нагромождать код кучей функцией, использующихся один раз удобнее использовать анонимные функции.
lambda - ключевое слово для объявления анонимной функции.
На примере
1. Обычная функция сложения
2. Анонимная функция, помещенная в переменную
3. Обособленная анонимная функция в операторе print().
Короткая запись простой функции, необходимая для решения одной конкретной задачи удобная вещь. Дабы не нагромождать код кучей функцией, использующихся один раз удобнее использовать анонимные функции.
lambda - ключевое слово для объявления анонимной функции.
На примере
1. Обычная функция сложения
2. Анонимная функция, помещенная в переменную
3. Обособленная анонимная функция в операторе print().
Каким будет результат выполнения кода?
Anonymous Poll
22%
0
3%
2
14%
7
42%
5
6%
1
6%
Error
8%
Узнать ответ
Что выведет данный код?
Anonymous Quiz
11%
x=5, y=15, x+y
34%
5, 15, 20
34%
error
20%
x:=5, y:=15, 20
Что выведет код выше?
Anonymous Poll
17%
drink drink drink
37%
drink drinkdrink drink
20%
drink None drinkdrink
14%
drinkdrink drinkdrink drinkdrink
11%
Узнать ответ
Каким будет результат выполнения кода?
Anonymous Poll
8%
None
4%
15
33%
24
10%
120
23%
0
10%
Error
10%
Узнать ответ
Кортежи в Python
Кортеж - неизменяемый список, группа объектов.
Преимущества перед списками:
- Защита от изменений
- Размер меньше
- Скорость работы
Для создания кортежа используется функция tuple(), использование функции с интегрируемым объектом поместит все его элементы в кортеж.
Кортежи очень полезны, когда нужно передать группу элементов и не нагружать скрипт.
Кортеж - неизменяемый список, группа объектов.
Преимущества перед списками:
- Защита от изменений
- Размер меньше
- Скорость работы
Для создания кортежа используется функция tuple(), использование функции с интегрируемым объектом поместит все его элементы в кортеж.
Кортежи очень полезны, когда нужно передать группу элементов и не нагружать скрипт.