Упорядоченные словари
В структуре данных словаря Python по умолчанию нет порядка индексации. Вы можете думать о парах "ключ-значение" как о смешанных элементах в сумке. Это делает работу со словарями очень эффективной. Однако иногда вам просто нужно упорядочить словарь.
Не беспокойтесь, в библиотеке коллекций Python есть модуль с именем OrderedDict, который делает именно это.
В структуре данных словаря Python по умолчанию нет порядка индексации. Вы можете думать о парах "ключ-значение" как о смешанных элементах в сумке. Это делает работу со словарями очень эффективной. Однако иногда вам просто нужно упорядочить словарь.
Не беспокойтесь, в библиотеке коллекций Python есть модуль с именем OrderedDict, который делает именно это.
Проверьте использование памяти ваших объектов
С помощью sys.getsizeof() вы можете проверить использование памяти объектом(48 байт)
Вау… подождите… почему этот огромный список весит всего 48 байтов?
Это потому, что функция range возвращает класс, который только ведет себя как список. Диапазон намного менее нагружает память, чем фактический список чисел.
Вы можете убедиться сами, используя списковые включения, чтобы создать фактический список чисел из того же диапазона(87632 байта)
Итак, поиграв с sys.getsizeof(), вы можете больше узнать о Python и использовании вашей памяти.
С помощью sys.getsizeof() вы можете проверить использование памяти объектом(48 байт)
Вау… подождите… почему этот огромный список весит всего 48 байтов?
Это потому, что функция range возвращает класс, который только ведет себя как список. Диапазон намного менее нагружает память, чем фактический список чисел.
Вы можете убедиться сами, используя списковые включения, чтобы создать фактический список чисел из того же диапазона(87632 байта)
Итак, поиграв с sys.getsizeof(), вы можете больше узнать о Python и использовании вашей памяти.
Что выведет код сверху?
Anonymous Quiz
28%
False, False
32%
True, False
18%
False, True
22%
True, True
Распаковывание последовательностей при неизвестном числе элементов
Для указанного в подзаголовке случая в Python 3 есть оператор звездочки – расширенная операция распаковывания последовательности. Переменной со звездочкой присваивается часть списка, содержащая все неприсвоенные элементы, соответствующие этой позиции.
Для указанного в подзаголовке случая в Python 3 есть оператор звездочки – расширенная операция распаковывания последовательности. Переменной со звездочкой присваивается часть списка, содержащая все неприсвоенные элементы, соответствующие этой позиции.
Работа с ip адресами
Если вам приходится писать на Python программы для работы с сетью — это значит, что вам может очень пригодиться модуль
Одним из вариантов его использования является генерация списка IP-адресов из диапазона адресов, заданных в формате CIDR (Classless Inter-Domain Routing, или бесклассовая адресация).
Если вам приходится писать на Python программы для работы с сетью — это значит, что вам может очень пригодиться модуль
ipaddress
.Одним из вариантов его использования является генерация списка IP-адресов из диапазона адресов, заданных в формате CIDR (Classless Inter-Domain Routing, или бесклассовая адресация).
Прогресс выполнения программы
Индикаторы прогресса добавляют наглядности в скриптах, которые исполняют какие-то функции, требующие времени для выполнения. Модуль
Привычный
Индикаторы прогресса добавляют наглядности в скриптах, которые исполняют какие-то функции, требующие времени для выполнения. Модуль
tqdm
является простым и лаконичным вариантом.Привычный
range
можно заменить на trange
для визуализации прогресса. А для итерации по какой-либо последовательности достаточно просто передать её в функцию tqdm
. Также модуль хорошо себя зарекомендовал и в Jupyter Notebook.Модуль geopy
Программистам может быть сложно ориентироваться в географии. Однако модуль geopy всё упрощает:
$ pip install geopy
Он работает путём абстрагирования API разных сервисов геокодирования. Этот модуль даёт возможность узнать полный адрес места, его долготу и широту и даже высоту.
Также в нём есть полезный класс Distance. Он высчитывает расстояние между двумя местами в удобной единице измерения.
Программистам может быть сложно ориентироваться в географии. Однако модуль geopy всё упрощает:
$ pip install geopy
Он работает путём абстрагирования API разных сервисов геокодирования. Этот модуль даёт возможность узнать полный адрес места, его долготу и широту и даже высоту.
Также в нём есть полезный класс Distance. Он высчитывает расстояние между двумя местами в удобной единице измерения.
Превращаем текст в речь
На Python есть классная библиотека
При создании экземпляра класса
Сохранить полученный результат можно с помощью метода
На Python есть классная библиотека
gTTS
(Google Text-to-Speech), которая взаимодействует с Google Translate's text-to-speech API и позволяет делать из текста аудиофайлы. Пакет, как всегда, устанавливается через pip
. При создании экземпляра класса
gTTS
мы передаем исходный текст первым аргументом. Также можно передать опциональный аргумент, отвечающий за язык, который по умолчанию является английским. Сохранить полученный результат можно с помощью метода
save
, в который передается название файла.Автоматическая отправка сообщений в WhatsApp
Чтобы использовать этот модуль Python для автоматической отправки сообщений в WhatsApp в установленное время, нам нужен браузер Chrome, и вы должны войти в свой WhatsApp на веб-сайте web.whatsapp.com.
В приведенном выше коде мы указали номер мобильного телефона, на который мы хотим отправить сообщение, затем сообщение, а затем время, в которое сообщение должно быть отправлено.
Установка данного модуля - pip install pywhatkit(также возможно вам понадобится установить модуль flask - pip install flask.
Не забудьте отправить своим друзьям тысячи случайных сообщений в WhatsApp!
Чтобы использовать этот модуль Python для автоматической отправки сообщений в WhatsApp в установленное время, нам нужен браузер Chrome, и вы должны войти в свой WhatsApp на веб-сайте web.whatsapp.com.
В приведенном выше коде мы указали номер мобильного телефона, на который мы хотим отправить сообщение, затем сообщение, а затем время, в которое сообщение должно быть отправлено.
Установка данного модуля - pip install pywhatkit(также возможно вам понадобится установить модуль flask - pip install flask.
Не забудьте отправить своим друзьям тысячи случайных сообщений в WhatsApp!
👍1
uuid
Стандартный модуль uuid — быстрый и простой способ сгенерировать UUID (universally unique identifier, глобально уникальный идентификатор).
Так мы создаём случайное 128-битное число, которое почти наверняка будет уникальным.
Существует более 2¹²² возможных UUID. Это более 5 ундециллионов или 5,000,000,000,000,000,000,000,000,000,000,000,000.
Вероятность нахождения дубликатов в заданном наборе крайне мала. Даже при наличии триллиона UUID вероятность того, что среди них есть дубликат, гораздо меньше, чем один к миллиарду.
Вполне недурно для двух строк кода.
Стандартный модуль uuid — быстрый и простой способ сгенерировать UUID (universally unique identifier, глобально уникальный идентификатор).
Так мы создаём случайное 128-битное число, которое почти наверняка будет уникальным.
Существует более 2¹²² возможных UUID. Это более 5 ундециллионов или 5,000,000,000,000,000,000,000,000,000,000,000,000.
Вероятность нахождения дубликатов в заданном наборе крайне мала. Даже при наличии триллиона UUID вероятность того, что среди них есть дубликат, гораздо меньше, чем один к миллиарду.
Вполне недурно для двух строк кода.