Python академия
Kanalga Telegram’da o‘tish
Учи Python быстро и легко. Ежедневно публикуем практические задачи, разборы, готовые решения, объяснения логики, советы по алгоритмам. ✔ Подходит для прокачки навыков кодирования. По всем вопросам @evgenycarter
Ko'proq ko'rsatish7 179
Obunachilar
Ma'lumot yo'q24 soatlar
-87 kun
-4530 kun
Postlar arxiv
7 181
Синтаксис
Синтаксис представления списков обеспечивает простой и надежный способ для создания новых списков из уже существующих. Допустим, нам нужен новый список, в котором каждый элемент старого списка будет умножен на 3. При помощи цикла for мы можем это сделать.
Подписывайтесь на канал 👉@pythonofff
7 181
Enum перечисления
Этот класс можно назвать удобным способом инкапсуляции списка констант, чтобы они не были разбросаны по всему коду без структуры.
Подписывайтесь на канал 👉@pythonofff
7 181
Ответ на вопрос и Музыка ваша 90 дней бесплатно
Яндекс Музыка 90 дней бесплатно (вместо 299 ₽ в месяц) для вас и 3-х ваших близких.
Попробуйте сейчас!
Попробовать
#реклама 16+
music.yandex.ru
О рекламодателе
7 181
Отлавливаем ошибки с помощью assert
Инструкция assert принимает логическое выражение и необязательное сообщение. Она используется для проверки типов, значений аргумента и вывода функции, а также для отладки, поскольку останавливает программу в случае ошибки.
Если выполнить инструкцию assert с логическим выражением, результат которого равен True, ничего не произойдет. Но в случае с False будет сгенерировано исключение AssertionError.
Однако не нужно пытаться обработать исключение AssertionError блоком try-except. В таком случае assert теряет свой смысл.
В примере мы проверили, является ли переданный аргумент числовым типом данных. Если не является, то будет вызвано исключение и выведено указанное сообщение.
Подписывайтесь на канал 👉@pythonofff
7 181
Как скопировать всё содержимое внешнего файла?
В большинстве случаев возникает необходимость скопировать содержимое вашей ячейки в скрипт python или текстовый файл непосредственно из вашего блокнота Jupyter.
Вместо того чтобы копировать все и создавать новый файл, вы можете напрямую экспортировать свои данные, добавив команду writefile в ячейку перед кодом.
Подписывайтесь на канал 👉@pythonofff
7 181
Видеоплатформа NUUM. Получай доход от контента
Стань блогером на NUUM и монетизируй свой контент.
⚡Получай донаты и выводи прямо на карту
⚡Подключи Партнёрскую программу и зарабатывай на показе встроенной рекламы на твоем канале
⚡Выкладывай крутые видео, проводи стримы и твой доход будет расти
Зарегистрироваться
#реклама
nuum.onelink.me
О рекламодателе
7 181
Узнаем кодировку текста
Думаю, у всех были ситуации, когда вы открыли файл или получили ответ от сервера, а внутри оказывался набор странных символов в непонятной кодировке.
Пакет chardet как раз был создан для работы с кодировкам. Его метод detect выдает предполагаемую кодировку с точностью от 0 до 1.
В примере на картинке мы получили ответ по запросу к серверу, взяли его содержимое и проверили кодировку через этот метод.
Подписывайтесь на канал 👉@pythonofff
7 181
IP-адрес
Вы можете менять IP-адрес каждые несколько секунд или для каждого запроса. Целевой сервер не может идентифицировать ваши запросы и не блокирует эти IP-адреса. Вы можете создать огромный список прокси и выбирать по одному для каждого запроса случайным образом. Или используйте вращающийся прокси, который сделает это за вас. После этого изменения шансы на правильную работу скрапера резко возрастают.
Подписывайтесь на канал 👉@pythonofff
7 181
Надежный и мощный хостинг Евробайт от 159 руб. в месяц!
Вы получите:
- Неограниченное количество сайтов и почтовых ящиков – воплощайте все свои идеи без ограничений!
- Бесплатный DNS и помощь в переносе сайта – сделаем процесс максимально комфортным для вас!
- Бесплатный SSL-сертификат – обеспечьте защиту вашего сайта и завоюйте доверие пользователей!
- Техподдержка 24/7 с ответом через 10 минут через тикет-систему – наши эксперты всегда готовы помочь вам!
- Попробуйте виртуальный хостинг с бесплатным тестовым периодом 30 дней – убедитесь в качестве наших услуг!
Нужна помощь в администрировании серверов? Мы предоставляем услугу администрирования серверов для вашего спокойствия и эффективности работы.
Сделайте свой выбор в пользу надежности и профессионализма – переходите на Евробайт!
Узнать больше
#реклама
eurobyte.ru
О рекламодателе
7 181
Объект Ellipsis
В Python есть крайне интересный объект, который обозначается как ..., то есть многоточие. Этот объект называется Ellipsis, и используется он в основном как заготовка для чего-то еще не реализованного.
Применяется он зачастую при работе со срезами в Numpy, но и в обычном коде его тоже встретить можно. Например, ... периодически встречается в теле функции в качестве заглушки.
Если привести его к логическому типу данных, то увидим True — это важный момент, потому что похожий по своей сути None выдает False.
Подписывайтесь на канал 👉@pythonofff
7 181
User-Agent
Механизм защиты от скрапинга – User-Agent. UA – это заголовок, который браузеры отправляют в запросах для идентификации. Обычно он представляет собой длинную строку, в которой объявляется имя браузера, версия, платформа и многое другое.
Подписывайтесь на канал 👉@pythonofff
7 181
Выиграйте подписку на Яндекс Музыку
✨Ответьте на 1 вопрос и получите в подарок доступ к Яндекс Музыке на 90 дней бесплатно!✨
Слушайте любимые треки и подкасты в HQ качестве без рекламы.
Для 4 аккаунтов и 10 устройств. Кинопоиск тоже в подписке!
Попробуйте!👍
Попробовать
#реклама 18+
music.yandex.ru
О рекламодателе
7 181
Отправляем универсальные уведомления
Наткнулся на интересный пакет notifiers, который позволяет отправлять уведомления на почту, через Телеграм бота, в Слэк и еще много куда. Всего доступно 16 провайдеров.
В функцию get\_notifier передаем название провайдера в виде строки и получаем объект, с которым можно работать. Отправить уведомление можно с помощью универсального метода notify.
Если не уверены, какие аргументы нужно передать для отправки уведомления, то можете посмотреть их через атрибут required у созданного объекта.
Например, для Телеграма нужно передать токен бота, айди чата и само сообщение. В случае с почтой необходимо указать логин, пароль, адресата и также сообщение.
Подписывайтесь на канал 👉@pythonofff
7 181
Любой водитель такси может выиграть приз от Яндекс Про
Выполните всего 10 поездок с пассажирами в нужный срок — и вы участник акции.
100 000 ₽, смартфон или промокод на топливо — призов много.
Новички тоже смогут — нужно лишь подать заявку на сотрудничество с сервисом, зарегистрироваться и выйти на линию.
Не упускайте шанс!
Узнать больше
#реклама
pro.yandex
О рекламодателе
7 181
Генераторы в Python
Вместо выражения return генераторы возвращают значения путем многократного применения выражения yield. При каждом новом вызове функции возвращается следующее значение итерируемой последовательности.
Генератор может быть вызван через функцию next(). При каждом вызове next() возвращается следующее значение генератора.
Подписывайтесь на канал 👉@pythonofff
7 181
Важное про цифры и Юникод
0, 1, 2, 3, 4, 5, 6, 7, 8, 9 — не единственные символы, которые считаются цифрами. Python следует правилам Юникода и обрабатывает несколько сотен символов как цифры.
Это крайне важно знать, потому что эти символы влияют на такие функции, как int, unicode.isdecimal и даже re.match.
Думаю, в один момент это знание сэкономит вам время на исправление "бага" с такими странными символами. Предупрежден — значит вооружен.
Подписывайтесь на канал 👉@pythonofff
7 181
-25% на анализы в ИНВИТРО по подписке Газпром Бонус.
Выберите только нужные предложения из более 60 офферов партнеров в подписку и получайте выгоду каждый день.
Подключите Газпром Бонус с предложением Инвитро всего за 2 ₽ в первый месяц.
Узнать больше
Есть противопоказания. Посоветуйтесь с врачом.
#реклама
invitro.gazprombonus.ru
О рекламодателе
7 181
Запрос DELETE
Вам нужно удалить ресурс из API? Вы можете использовать запрос DELETE. Здесь мы будем удалять товар с идентификатором, равным 21
Подписывайтесь на канал 👉@pythonofff
7 181
Кэшированные атрибуты
Во встроенном пакете functools есть классный декоратор @ cached_property, который позволяет кэшировать результат метода и загнать его в атрибут.
Таким образом, при первом обращении к атрибуту производятся вычисления в методе, а при дальнейших берется уже кэшированное значение.
Подобное кэшеирование полезно в случаях, когда в методе производятся вычисления, которые нагружают систему и занимают много времени.
Подписывайтесь на канал 👉@pythonofff
7 181
Телеграм-канал с авторскими онлайн-курсами
У образовательной платформы Stepik есть свой телеграм-канал, в котором они рассказывают об авторских курсах (как платных, так и бесплатных). Эта платформа славится в первую очередь своими курсами по Python. У них есть такие подборки курсов:
- Python для разработки
- Web-разработка на Python
- Python для анализа данных
- Тестирование на Python
Подпишитесь на stepik_courses и найдите интересующий курс для себя!
Подписаться
#реклама 16+
О рекламодателе
