uk
Feedback
Senior Python Developer

Senior Python Developer

Відкрити в Telegram

№ 4931117861 Публикуем интересные/полезные фичи/библиотеки языка. По вопросам сотрудничества: @adv_and_pr Канал на бирже: https://telega.in/c/seniorpy

Показати більше
2025 рік у цифрахsnowflakes fon
card fon
44 575
Підписники
Немає даних24 години
-907 днів
-55930 день
Архів дописів
Фото недоступнеДивитись в Telegram
Вывод значения по умолчанию для отсутствующего ключа словаря Обращение к несуществующему ключу словаря вызывает исключение. Избежать этого можно, вызывая метод get. В указанном случае метод выдает None (по умолчанию) или заданное значение аргумента.
Показати все...
Фото недоступнеДивитись в Telegram
Выключение компьютера Давайте проверим, как мы можем выключить компьютер, используя всего одну строку кода. Для этого мы будем использовать модуль ОС. Это один из действительно важных модулей в Python со многими другими функциями.
Показати все...
Фото недоступнеДивитись в Telegram
Перегрузка операторов сравнения В случае, если вам в коде необходимо сравнивать объекты какого-либо класса, требуется реализовать магические методы, которые вызываются при сравнении. Например, под капотом записи a < b вызывается a.__lt__(b). Для каждого оператора сравнения есть свой магический метод. Подробнее про то, какой метод за какой оператор отвечает, выше в коде. Писать все шесть методов получается слегка громоздко, поэтому зачастую используют декоратор total_ordering из functools.
Показати все...
Фото недоступнеДивитись в Telegram
Рисуем звезду при помощи 🐢 Результат нашего кода находится в посте выше. turtle(черепаха) — это библиотека Python, похожая на доску для рисования, которая позволяет нам приказать черепахе рисовать на ней! Мы можем использовать множество функций черепахи, которые могут перемещать черепаху. Подробнее можно почитать здесь.
Показати все...
Фото недоступнеДивитись в Telegram
#вопросы_с_собеседований Приведите пример генератора словарей Мы создаем словарь с буквами алфавита в качестве ключей и индексами в качестве значений.
Показати все...
Фото недоступнеДивитись в Telegram
Перевод списка строк в список чисел 1 вариант Наиболее идиоматический и идеологически выверенный способ 2 вариант Для любителей функционального стиля Тут функция map применяет функцию int к каждому элементу объекта a, потом результат преобразовывается в список. Такой вариант считается менее "питоничным", но тоже имеет право на существование (как минимум, во многих случаях запись через map получается более компактной, чем вариант через списочное выражение).
Показати все...
Фото недоступнеДивитись в Telegram
#вопросы_с_собеседований Запустится ли этот код на Python 3? Если да, то что он выведет? sys.allow_boolean_assignment разрешает создавать переменные с именами, зарезервированными под идентификаторы типа bool. Поэтому этот код запустится и выведет "True is False". Эта настройка введена в известном первоапрельском коммите, который до сих пор остался в коде интерпретатора. Если кандидат об этом знает, можно с уверенностью сказать, что он общается в должных профессиональных кругах и любят углубляться в детали.
Показати все...
Фото недоступнеДивитись в Telegram
Сборка словаря В примере показано, как сгруппировать два массива в один словарь. При этом работать можно с любыми типами данных.
Показати все...
Фото недоступнеДивитись в Telegram
Библиотека Progressbar Эта библиотека делает именно то, о чём вы подумали — выводит прогрессбар.
Показати все...
Фото недоступнеДивитись в Telegram
Как проверить начинается ли строка с определенного слова в Python? Чтобы проверить, начинается ли строка со слова в Python, используйте regex для «starts with» ^ и само слово. В этом руководстве мы будем использовать функцию rе.sеаrсh() для сопоставления выражения со строкой и выяснения, начинается ли строка с данного слова или нет. В следующем примере мы проверим, начинается с определенного слова или нет.
Показати все...
Фото недоступнеДивитись в Telegram
Завершение программы Функция exit создана для удобства работы в интерактивном режиме, но не рекомендуется использовать её внутри скриптов. По факту функция просто поднимает исключение SystemExit, а при попытке вызова без скобок напишет подсказку о правильном способе выхода из интерпретатора. Использовать sys.exit() стоит, так как этот метод есть в стандартном модуле и всегда там доступен. А ещё это довольно явный и понятный способ завершения программы.
Показати все...
Фото недоступнеДивитись в Telegram
Отправляем электронные письма SMTP (Simple Mail Transfer Protocol) — это протокол, позволяющий отправлять электронные письма. В стандартной библиотеке есть пакет smtplib, реализующий его поведение. Для подключения к серверу будем использовать класс SMTP_SSL, включающий в себя и шифрование. В качестве аргументов передадим ему адрес сервера и порт. Авторизация происходит с помощью метода login, в который передаём логин и пароль. Отправлять письма следует методом sendmail, который принимает адреса отправителя и получателя, а также сам текст. В конце программы следует закрывать соединение с помощью метода quit(). Следует обратить внимание на то, что некоторые почтовые сервисы могут не разрешить так сразу подключаться к их серверам и производить операции. В этом случае пришлось немного повоевать с Gmail.
Показати все...
Фото недоступнеДивитись в Telegram
winsound winsound – это модуль в Python, который используется для доступа к основному механизму воспроизведения звука операционной системы Windows. В модуле winsound файл WAV можно воспроизвести с помощью всего нескольких строк кода (показано на картинке). Модуль не поддерживает никаких форматов файлов, кроме WAV. Также позволяет пользователям подавать звуковой сигнал из динамиков, используя выражение winsound.Beep(частота, продолжительность). Например: import winsound winsound.Beep( 1010, 110 )
Показати все...
Фото недоступнеДивитись в Telegram
Отправляем универсальные уведомления В Python присутствует интересный пакет notifiers, который позволяет отправлять уведомления на почту, через Телеграм бота, в Слэк и еще много куда. Всего доступно 16 провайдеров, подробнее про них в документации. В функцию get_notifier передаем название провайдера в виде строки и получаем объект, с которым можно работать. Отправить уведомление можно с помощью универсального метода notify. Если не уверены, какие аргументы нужно передать для отправки уведомления, то можете посмотреть их через атрибут required у созданного объекта. Например, для Телеграма нужно передать токен бота, айди чата и само сообщение. В случае с почтой необходимо указать логин, пароль, адресата и также сообщение.
Показати все...
Фото недоступнеДивитись в Telegram
Ищем ошибки с помощью assert Инструкция assert принимает логическое выражение и необязательное сообщение. Используется для проверки типов, значений аргумента и вывода функции, а ещё для отладки, поскольку останавливает программу в случае ошибки. Если выполнить инструкцию assert с логическим выражением, результат которого равен True, то ничего не произойдет. Но в случае с False будет сгенерировано исключение AssertionError. Однако не нужно пытаться обработать исключение AssertionError блоком try-except, так как assert тогда теряет свой смысл. В примере на картинке проверяется, является ли переданный аргумент числовым типом данных. Если не является, то будет вызвано исключение и выведено указанное сообщение.
Показати все...
Фото недоступнеДивитись в Telegram
Временные файлы В стандартной библиотеке Python имеется модуль tempfile, содержащий классы и методы для работы со временными файлами и директориями. Такие файлы нужны для сохранения промежуточных результатов выполнения программы. Функция TemporaryFile создает временный файл в системной директории и возвращает файлоподобный объект. Созданный временный файл будет автоматически удален по закрытию файла или при выходе из контекстного менеджера, а другие процессы и приложения не смогут получить доступ к этому временному файлу.
Показати все...
#вопросы_с_собеседований В чем разница между модулем и пакетом в Python? Каждый программный файл Python представляет собой модуль, импортирующий другие модули как объекты. То есть модуль — это способ структурирования вашей программы. Папка с программой на Python называется пакетом модулей.
Показати все...
Фото недоступнеДивитись в Telegram
#вопросы_с_собеседований Что делает функция zip()? Она возвращает итератор кортежей, формирует n-пару значений из перечисляемых, передаваемых функции. n — кол-во итерируемых, которые передают функции. Чтобы лучше понять работу zip, изучите картинку. В результате работы функции мы получаем список массивов.
Показати все...
#вопросы_с_собеседований Каковы ключевые особенности Python? Это один из популярных вопросов новичку. Обычное определение: Python — это язык программирования общего назначения высокого уровня с открытым исходным кодом. Поскольку это язык программирования общего назначения, и он поставляется с большим набором библиотек, его можно использовать для разработки практически любых приложений. Некоторые из его ключевых особенностей: ☑️ Интерпретируемый ☑️ С динамической типизацией ☑️ Объектно-ориентированный
Показати все...
Фото недоступнеДивитись в Telegram
Находим файлы по шаблону Основной фишкой модуля glob является удобная и лаконичная работа с поиском файлов по паттернам. Более того, можно даже пройтись по директориям рекурсивно. В одноименный метод glob передаётся шаблон для поиска файлов, а возвращается список с результатами. Все методы следуют механизму и правилам сопоставления паттернов в стиле Unix. Вообще модуль является встроенным, но в некоторых ситуациях импорт может выдать исключение. В таком случае надо просто его переустановить через пакетный менеджер pip.
Показати все...