Функция starmap()
Cоздает итератор, который вычисляет функцию function, используя аргументы, полученные из кортежей в итерируемой последовательности iterable.
Используется вместо map(), когда параметры функции уже сгруппированы в кортежи из одной итерации, т. е. данные были предварительно упакованы в кортежи.
Параметры:
function - функция
iterable - итерируемая последовательность.
Cоздает итератор, который вычисляет функцию function, используя аргументы, полученные из кортежей в итерируемой последовательности iterable.
Используется вместо map(), когда параметры функции уже сгруппированы в кортежи из одной итерации, т. е. данные были предварительно упакованы в кортежи.
Параметры:
function - функция
iterable - итерируемая последовательность.
Воспроизведение аудио
Собственная библиотека ОС Python также способна воспроизводить аудиофайлы. Если у вас есть проигрыватель по умолчанию, такой как VLC, он автоматически воспроизводит звук в этой программе.
Это можно легко использовать для создания сценариев, таких как супер крутой персональный будильник, предупреждение о сидячем положении, напоминание, программы мотивации и т.д.
Собственная библиотека ОС Python также способна воспроизводить аудиофайлы. Если у вас есть проигрыватель по умолчанию, такой как VLC, он автоматически воспроизводит звук в этой программе.
Это можно легко использовать для создания сценариев, таких как супер крутой персональный будильник, предупреждение о сидячем положении, напоминание, программы мотивации и т.д.
Time it
Библиотека timeit отлично подходит для определения времени выполнения Python. Просто передайте функцию в строковом формате методу timeit.timeit (), и он выполнит 1 миллион выполнений, чтобы сообщить минимальное время выполнения кода.
Очень полезно сравнивать небольшие фрагменты кода и различные функции, но с большим кодом это может быть медленным.
Посмотрите пример выше, демонстрирующий разницу во времени выполнения двух очень похожих методов понимания списков в Python:
Библиотека timeit отлично подходит для определения времени выполнения Python. Просто передайте функцию в строковом формате методу timeit.timeit (), и он выполнит 1 миллион выполнений, чтобы сообщить минимальное время выполнения кода.
Очень полезно сравнивать небольшие фрагменты кода и различные функции, но с большим кодом это может быть медленным.
Посмотрите пример выше, демонстрирующий разницу во времени выполнения двух очень похожих методов понимания списков в Python:
Упорядоченные словари
В структуре данных словаря 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 есть оператор звездочки – расширенная операция распаковывания последовательности. Переменной со звездочкой присваивается часть списка, содержащая все неприсвоенные элементы, соответствующие этой позиции.