🧍♂️🧍🧍♀️ Как реализовать очередь в Python
Очереди (Queues) — одна из структур данных, используемая для хранения коллекций элементов в порядке first-in, first-out (FIFO). Всё, как в настоящей очереди, — кто первым вошёл, то раньше всех и вышел.
В Python очереди можно реализовать с помощью класса deque() из модуля collections или модуля queue.
🧍♀️Чтобы добавить элементы в очередь: в deque используем метод append(), в Queue — put()
🧍Чтобы удалить элементы из очереди: в deque — метод popleft(), в Queue — get()
🧍♂️Чтобы проверить размер очереди, используем len()
Стоит отметить, что queue.Queue предназначен для многопоточного программирования.
#код
Очереди (Queues) — одна из структур данных, используемая для хранения коллекций элементов в порядке first-in, first-out (FIFO). Всё, как в настоящей очереди, — кто первым вошёл, то раньше всех и вышел.
В Python очереди можно реализовать с помощью класса deque() из модуля collections или модуля queue.
🧍♀️Чтобы добавить элементы в очередь: в deque используем метод append(), в Queue — put()
🧍Чтобы удалить элементы из очереди: в deque — метод popleft(), в Queue — get()
🧍♂️Чтобы проверить размер очереди, используем len()
Стоит отметить, что queue.Queue предназначен для многопоточного программирования.
#код
👍27❤2
🧑💻 Что делает функция takewhile() модуля itertools
Функция создаёт итератор, возвращающий элементы из итерируемого объекта до тех пор, пока указанное условие истинно (True или 1). Как только условие становится ложным, итератор прекращает свою работу и больше не возвращает элементы.
В примере takewhile будет возвращать элементы из списка my_list, пока они меньше пяти. Как только встретится элемент, равный или больший пяти, работа прекратится.
#код
Функция создаёт итератор, возвращающий элементы из итерируемого объекта до тех пор, пока указанное условие истинно (True или 1). Как только условие становится ложным, итератор прекращает свою работу и больше не возвращает элементы.
В примере takewhile будет возвращать элементы из списка my_list, пока они меньше пяти. Как только встретится элемент, равный или больший пяти, работа прекратится.
#код
👍26❤3👏2🤔1
⭐ Продолжаем изучать модуль itertools. Сегодня — функция starmap()
starmap() принимает в качестве аргументов другую функцию и итерируемый объект, элементы которого представлены кортежами. Переданная функция применяется к каждому из кортежей, каждый кортеж распаковывается, и его элементы передаются в функцию как отдельные аргументы.
🌟 Таким образом, starmap() можно использовать вместо map(), если данные были предварительно упакованы в кортежи.
В примере starmap() позволяет вычислить квадраты чисел в кортежах в списке и сложить их.
#код
starmap() принимает в качестве аргументов другую функцию и итерируемый объект, элементы которого представлены кортежами. Переданная функция применяется к каждому из кортежей, каждый кортеж распаковывается, и его элементы передаются в функцию как отдельные аргументы.
🌟 Таким образом, starmap() можно использовать вместо map(), если данные были предварительно упакованы в кортежи.
В примере starmap() позволяет вычислить квадраты чисел в кортежах в списке и сложить их.
#код
👍24🥰2
👓 Задача: Дан непустой список с целыми числами, каждый элемент которого, кроме одного, повторяется дважды. Нужно найти этот единственный элемент.
Предлагается решение через использование оператора «^» — побитового XOR (исключающее ИЛИ).
Подробное объяснение в видео
#код
Предлагается решение через использование оператора «^» — побитового XOR (исключающее ИЛИ).
Подробное объяснение в видео
#код
🔥19👍7👏1
Зачем в Python использовать конструкцию
Если коротко: так мы будем уверены, что определённый кусок кода выполнится только в случае, если мы запустим Python-скрипт напрямую. Это позволяет нам без опасений импортировать его в качестве модуля.
Если хочется подробнее, то вот видеоролик, объясняющий концепцию за две минуты
#код
if __name__ == '__main__'?Если коротко: так мы будем уверены, что определённый кусок кода выполнится только в случае, если мы запустим Python-скрипт напрямую. Это позволяет нам без опасений импортировать его в качестве модуля.
Если хочется подробнее, то вот видеоролик, объясняющий концепцию за две минуты
#код
👍31❤3👏1