Аннотации типов
Python имеет динамическую типизацию, и многие часто ругают за это язык.
Однако в новых версиях добавили поддержку аннотаций типов переменных, полей классов, аргументов функций и возвращаемых значений, что призвано упростить чтение и понимание кода.
Python имеет динамическую типизацию, и многие часто ругают за это язык.
Однако в новых версиях добавили поддержку аннотаций типов переменных, полей классов, аргументов функций и возвращаемых значений, что призвано упростить чтение и понимание кода.
👍29🎉4🏆1🍾1
🤔15👍9🍾7🏆5🎉4😱3
Копируем файл в другой каталог
Метод Shutil.copy() в Python используется для копирования содержимого исходного файла в целевой файл или каталог. Он также сохраняет режим разрешений файла, но другие метаданные файла, такие как время создания и изменения файла, не сохраняются.
Подробнее с модулем Shutil можно ознакомиться здесь.
Метод Shutil.copy() в Python используется для копирования содержимого исходного файла в целевой файл или каталог. Он также сохраняет режим разрешений файла, но другие метаданные файла, такие как время создания и изменения файла, не сохраняются.
Подробнее с модулем Shutil можно ознакомиться здесь.
👍9🍾9🏆3😢1🎉1
Примеры форматирования строк
Метод s.format() представляет собой основной метод API. Он принимает строку формата format_string и произвольный набор позиционных *args и ключевых **kwargs аргументов. Это просто оболочка, которая вызывает s.vformat().
Подробнее про форматирование строк можно почитать здесь.
Метод s.format() представляет собой основной метод API. Он принимает строку формата format_string и произвольный набор позиционных *args и ключевых **kwargs аргументов. Это просто оболочка, которая вызывает s.vformat().
Подробнее про форматирование строк можно почитать здесь.
👍20🏆5🎉2🍾1
#Вопросы_с_собеседования
❓Что означает self в классе?
Self ссылается на экземпляр класса. Так метод может обновлять объект, к которому принадлежит.
На картинке передача self в __init__() дает возможность установить цвет экземпляра при инициализации.
❓Что означает self в классе?
Self ссылается на экземпляр класса. Так метод может обновлять объект, к которому принадлежит.
На картинке передача self в __init__() дает возможность установить цвет экземпляра при инициализации.
👍13❤12🎉3🏆3🍾1
#Вопросы_с_собеседования
❓Что такое pickling и unpickling?
Модуль pickle принимает любой объект Python, преобразует его в строковое представление и сохраняет в файл с помощью функции dump, такой процесс называется pickling.
Процесс извлечения исходных объектов Python из сохраненного строкового представления называется unpickling.
❓Что такое pickling и unpickling?
Модуль pickle принимает любой объект Python, преобразует его в строковое представление и сохраняет в файл с помощью функции dump, такой процесс называется pickling.
Процесс извлечения исходных объектов Python из сохраненного строкового представления называется unpickling.
👍23🍾3🎉1🏆1
Вставляем одно изображение в другое с помощью Pillow
Метод paste() из библиотеки Pillow, предоставляет возможность вставки одного изображения в другое изображение.
По умолчанию изображение вставляется в верхней левой части фоновой картинки.
Подробнее можно ознакомиться здесь.
Метод paste() из библиотеки Pillow, предоставляет возможность вставки одного изображения в другое изображение.
По умолчанию изображение вставляется в верхней левой части фоновой картинки.
Подробнее можно ознакомиться здесь.
👍4🏆2🔥1🎉1🍾1
Рисуем 3D-куб с помощью Python
В этой посте мы рассмотрим трехмерные графики кубов с использованием matplotlib и Numpy. Кубы — одна из самых основных трехмерных фигур.
Куб — это трехмерный твердый объект, ограниченный 6 одинаковыми квадратными гранями. Куб имеет 6 граней, 12 ребер и 8 углов. Все грани — квадраты одинакового размера. Общая площадь поверхности куба равна сумме площадей шести одинаковых квадратов.
Наш куб находится в посте сверху.
Подробнее пояснение по коду можно найти здесь.
В этой посте мы рассмотрим трехмерные графики кубов с использованием matplotlib и Numpy. Кубы — одна из самых основных трехмерных фигур.
Куб — это трехмерный твердый объект, ограниченный 6 одинаковыми квадратными гранями. Куб имеет 6 граней, 12 ребер и 8 углов. Все грани — квадраты одинакового размера. Общая площадь поверхности куба равна сумме площадей шести одинаковых квадратов.
Наш куб находится в посте сверху.
Подробнее пояснение по коду можно найти здесь.
❤14👍4🍾3🏆1
Лайфхаки Python: сэкономить память и ускорить выполнение программы
Python часто ругают за то, что он медленный. Однако в нем существует несколько подходов, которые позволяют писать достаточно быстрый код. Сегодня поговорим про обработку списков.
Смотреть статью
Python часто ругают за то, что он медленный. Однако в нем существует несколько подходов, которые позволяют писать достаточно быстрый код. Сегодня поговорим про обработку списков.
Смотреть статью
Tproger
Как ускорить программу на Python и сэкономить память
Python часто ругают за то, что он медленный, но есть несколько способов ускорить код. В этой статье поговорим про обработку списков.
👍9🏆2❤1
#Вопросы_с_собеседования
❓Что делает функция zip()?
Она возвращает итератор кортежей, формирует n-пару значений из перечисляемых, передаваемых функции. n — кол-во итерируемых, которые передают функции.
Чтобы лучше понять работу zip, изучите картинку. В результате работы функции мы получаем список массивов.
❓Что делает функция zip()?
Она возвращает итератор кортежей, формирует n-пару значений из перечисляемых, передаваемых функции. n — кол-во итерируемых, которые передают функции.
Чтобы лучше понять работу zip, изучите картинку. В результате работы функции мы получаем список массивов.
🤔12👍11❤2🏆2
🎵 🎵 🎵 🎵
Немного отвлечемся от Pythonчика 🐍 🐍 🐍 🐍
Я уже долгое время не могу пополнить свой плейлист новыми хорошими треками, поэтому хотел бы узнать у вас, дорогих подписчиков, какую музыку вы слушаете и что могли бы порекомендовать 🎤 🎤 🎤 🎤
Немного отвлечемся от Pythonчика 🐍 🐍 🐍 🐍
Я уже долгое время не могу пополнить свой плейлист новыми хорошими треками, поэтому хотел бы узнать у вас, дорогих подписчиков, какую музыку вы слушаете и что могли бы порекомендовать 🎤 🎤 🎤 🎤
🤔11🏆4❤3👍1
😢25🤔10👍6🎉5😱4🍾4
Аудиомодуль Dejavu
Dejavu – это аудиомодуль на Python с открытым исходным кодом. Он может запоминать записанный звук, прослушивая его один раз, и этот звук сохраняется в базе данных.
После этого, когда проигрывается песня, микрофонный вход или дисковый файл, Dejavu пытается сопоставить звук с сохраненными в базе данными, и вернуть песню или запись, которая была воспроизведена ранее.
Модуль Dejavu превосходит распознавание отдельных сигналов с реалистичным количеством шума.
Подробнее можно почитать здесь.
Dejavu – это аудиомодуль на Python с открытым исходным кодом. Он может запоминать записанный звук, прослушивая его один раз, и этот звук сохраняется в базе данных.
После этого, когда проигрывается песня, микрофонный вход или дисковый файл, Dejavu пытается сопоставить звук с сохраненными в базе данными, и вернуть песню или запись, которая была воспроизведена ранее.
Модуль Dejavu превосходит распознавание отдельных сигналов с реалистичным количеством шума.
Подробнее можно почитать здесь.
👍21❤3🎉1🏆1
defaultdict: безошибочный словарь
Обычный словарь dict в Python содержит пары вида «ключ:значение». Значение из словаря можно запросить по ключу. В случае если запрашиваемого ключа в словаре нет, Python выдаст ошибку.
Поведение логичное, но не слишком удобное для работы. Словарь defaultdict из библиотеки collections поступает иначе: если запросить у такого продвинутого словаря ключ, которого в нём нет, он не обидится и не выкинет ошибку, а вместо этого:
— создаст этот ключ;
—создаст к нему значение, которое будет иметь тип, оговорённый по умолчанию («по дефолту» — отсюда, кстати, и название), — например, целое число или строку;
—вернёт вам это значение.
Обычный словарь dict в Python содержит пары вида «ключ:значение». Значение из словаря можно запросить по ключу. В случае если запрашиваемого ключа в словаре нет, Python выдаст ошибку.
Поведение логичное, но не слишком удобное для работы. Словарь defaultdict из библиотеки collections поступает иначе: если запросить у такого продвинутого словаря ключ, которого в нём нет, он не обидится и не выкинет ошибку, а вместо этого:
— создаст этот ключ;
—создаст к нему значение, которое будет иметь тип, оговорённый по умолчанию («по дефолту» — отсюда, кстати, и название), — например, целое число или строку;
—вернёт вам это значение.
🍾15❤3👍3🎉3🏆2😢1
#Вопросы_с_собеседования
❓Что будет выведено после второго вызова append() в коде выше?
Ответ:
Когда значением по умолчанию для аргумента функции является выражение, оно вычисляется только один раз, а не всегда при вызове функции. Таким образом, после того как аргумент list был инициализирован в пустой массив, последующие вызовы функции без аргументов продолжат использовать тот же самый массив, что был инициализирован изначально.
>>> append() # при первом вызове без аргумента используется значение по умолчанию []
[0]
>>> append() # но затем...
[0, 1]
>>> append() # последовательные вызовы расширяют список по умолчанию
[0, 1, 2]
>>> append() # и так продолжается...
[0, 1, 2, 3].
❓Что будет выведено после второго вызова append() в коде выше?
Ответ:
Когда значением по умолчанию для аргумента функции является выражение, оно вычисляется только один раз, а не всегда при вызове функции. Таким образом, после того как аргумент list был инициализирован в пустой массив, последующие вызовы функции без аргументов продолжат использовать тот же самый массив, что был инициализирован изначально.
[0]
>>> append() # но затем...
[0, 1]
>>> append() # последовательные вызовы расширяют список по умолчанию
[0, 1, 2]
>>> append() # и так продолжается...
[0, 1, 2, 3].
👍24🔥5🍾1
Проверка четности или нечетности числа без использования оператора %
Хотя этот трюк не намного лучше, чем использование оператора %, но иногда он эффективен (с большими числами).
Рассмотрим пару примеров:
k = 3
Двоичный: «11 & 1» будет 001, поэтому число нечетное
k = 4
Двоичный: «100 & 1» будет 000, поэтому число четное.
Хотя этот трюк не намного лучше, чем использование оператора %, но иногда он эффективен (с большими числами).
Рассмотрим пару примеров:
k = 3
Двоичный: «11 & 1» будет 001, поэтому число нечетное
k = 4
Двоичный: «100 & 1» будет 000, поэтому число четное.
👍56🔥2❤1😱1