Функция readline()
Функция readline() используется для построчного чтения содержимого файла. Она используется для крупных файлов. С ее помощью можно получать доступ к любой строке в любой момент.
Допустим у нас есть файл test.txt с несколькими строками:
This is line1.
This is line2.
This is line3.
Посмотрим, как функция readline() работает в test.txt.
Проверяем скорость интернета
Speedtest — пакет от создателей того самого сайта для проверки скорости интернета прямо на Python.
У объекта класса Speedtest
методы download()
и upload()
выдают соответственно скорость скачивания и загрузки данных.
Методы отдают результат в байтах, поэтому для наглядности в примере данные переводятся в мегабайты при выводе. Документация, как всегда, по ссылке.
🐍 3 классических паттерна проектирования в Python: синглтон, декоратор и итератор
Паттерны в Python – это шаблоны для решения задач, которые часто встречаются в практике программиста. Они представляют из себя огромный набор инструментов. В этом материале вы познакомитесь с самыми главными из них.
https://proglib.io/p/3-luchshih-patterna-proektirovaniya-v-python-singlton-dekorator-i-iterator-2022-02-03
Наследование
Ключевая механика ООП, позволяющая создать новый класс на основе уже имеющегося. При таком создании класса за основу берутся все атрибуты и методы родительского класса.
В примере на картинке класс Ferrari является дочерним классом Car.
Проверяем отсутствие общих элементов множества и последовательности
Метод sets.isdisjoint() позволяет проверить множество sets на отсутствие общих элементов с последовательностью other. Метод возвращает True, если множество sets не имеет общих элементов с итерируемым объектом other, если имеются общие элементы то вернет False.
Синтаксис:
sets.isdisjoint(other)
Параметры:
other - объект поддерживающий итерацию (кортеж, символ или подстрока).
sets - множество frozenset или set.
#вопросы_с_собеседований
Каким образом вы бы могли вывести на экран все функции в модуле?
Для перечисления функций в модуле используется метод dir(). На картинке представлено решение данного вопроса.
14–15 декабря VK Tech проведёт Weekend Offer для Python-разработчиков и инженеров. Это шанс присоединиться к работе над крупнейшей облачной платформой страны VK Cloud и вместе с VK Tech помогать бизнесу расти.
Узнайте больше о вакансиях и откликайтесь здесь.
Флоу простой: оставляете заявку, общаетесь с рекрутерами, выбираете слоты для собеседований и проходите их в назначенное время. О результате VK Tech сообщит вскоре после финального интервью.
Откликайтесь до 13 декабря включительно.
Получаем геолокацию с помощью Python
В нашем примере мы получаем геолокацию Пизанской башни по координатам широты и долготы.
Подробнее про этот трюк можно почитать здесь.
Скачиваем вебсайты целиком
Максимально простой, но при этом мощный пакет pywebcopy
поможет вам клонировать отдельные веб-страницы или даже целые сайты.
Функция save_webpage
скачивает страницу по указанной ссылке, в аргументы также можно передать путь, куда сохранить результат.
А вот save_website
дает возможность скачать целый вебсайт рекурсивно. Например, если сайт представляет из себя блог, то скрипт скачет все статьи, которые есть на сайте.
Но здесь надо быть аккуратнее, подобная рекурсивная загрузка отправит много запросов к серверу и может сильно нагрузить его, если на сайте много страниц.
Как связать микросервисы так, чтобы они работали идеально?
Синхронное взаимодействие или асинхронное? REST или Kafka? На открытом уроке разберём, какой подход нужен именно вашему проекту.
Узнайте, как правильно проектировать связи между микросервисами, чтобы повысить производительность и масштабируемость системы. Разберём реальные кейсы и сравним инструменты.
Спикер Евгений Непомнящий — опытный разработчик и преподаватель.
🔴 Записывайтесь на открытый вебинар 16 декабря в 20:00 мск и получите скидку на большое обучение «Microservice Architecture»: https://otus.pw/EFmk/
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Внимание, Java- и Kotlin-разработчики Минска! Приглашаем вас на технический митап с барбекю. Будем слушать и обсуждать топовые доклады от команды МТС Web Services, а после — общаться в неформальной обстановке.
Когда: 6 декабря, 18:00
Где: площадка «Бетон», Кальварийская ул., 17, г. Минск
В программе:
— Расскажем, как строим новое облако с нуля в 2024-м
— Поговорим о разработке IAM в облаке
— Обсудим, как создать Development Platform
— Разберёмся, что такое реконсиляция и почему она важна для облачной инфраструктуры
После докладов вас ждёт: барбекю-пати и нетворкинг.
Регистрируйтесь по ссылке.
💼 Декабрьский челлендж для алготрейдеров!
Используешь роботов в торговле на бирже? Тогда заходи в Терминал или приложение Т-Банка, нажимай на кнопку «Участвовать», подключай брокерский счет и готовься к конкурсу от Т-Инвестиций.
С 2 по 13 декабря твой робот должен совершить минимум 1000 сделок. По итогам конкурса выберем трейдеров с самой высокой доходностью в двух категориях: портфели до 1 млн руб. и от 1 млн руб.
Лидеры категорий разделят между собой призовой фонд в размере 550 000 рублей.
Узнать больше про конкурс можно тут.
P.S.📚 А если не торгуешь, но эта тема интересна - то изучи статью, как это делается, изучи Invest API для подключения торговых роботов, готовый sdk и примеры роботов других участников.
Сроки акции с 2.12.2024 по 13.12.2024. Подробнее об организаторе акции, порядке её проведения, призах, сроках, месте и порядке их получения на tbank.ru. АО «ТБанк». Реклама.
Тестовое собеседование на Middle Python-разработчика в четверг
5 декабря(в четверг) в 19:00 по мск приходи онлайн на открытое собеседование, чтобы посмотреть на настоящее интервью на Middle Python-разработчика.
Как это будет:
1. Карим, Team lead в Чойс, ex-Kaspersky будет задавать реальные вопросы и задачи разработчику-добровольцу
2. Карим будет комментировать каждый ответ респондента, чтобы дать понять чего от вас ожидает собеседующий на интервью
3. В конце можно будет задать любой вопрос Кариму
Что узнаешь на прямом эфире от ШОРТКАТ:
• Чего ждут от кандидатов на Middle позиции в Python-разработке
• Какие вопросы задают на интервью и зачем
• Как подготовиться к собесу, чтобы получить оффер
Переходи в нашего бота, чтобы получить ссылку на эфир → @shortcut_python_bot
Реклама. ООО "ШОРТКАТ", ИНН: 9731139396, erid: 2VtzqucPo68
Перевод текста с помощью Python
Перевод текстов с одного языка на другой становится все более распространенным явлением для различных веб-сайтов, поскольку они ориентированы на международную аудиторию. Пакет python, который помогает нам сделать это, называется translate. В примере на картинке мы переводим английскую фразу на испанский язык.
◀️Django с нуля. Часть 1: пишем многопользовательский блог для клуба любителей задач Python
Собираетесь изучать Django, но не знаете, с чего начать? Расскажем, как быстро создать функциональное приложение, которое продемонстрирует базовые возможности фреймворка. Приятного чтения
Смотреть статью
Аннотации типов
Python имеет динамическую типизацию, и многие часто ругают за это язык.
Однако в новых версиях добавили поддержку аннотаций типов переменных, полей классов, аргументов функций и возвращаемых значений, что призвано упростить чтение и понимание кода.
Учишь Python, но как дело доходит до собственного кода — всё, кирдык? 😥
На форумах только одно: «Больше практиковаться!» А толку? Ноль понимания и никакой поддержки от профи…
Плавали - знаем)) Поэтому специально для тебя - чат для Python-щиков 🤝
Что получишь?
1️⃣ Сможешь задавать любые вопросы без страха и осуждения и получать ответы за минуты, а не часы поиска в инете
2️⃣ Регулярные плюшки в виде стримов от препода с 15-ти летним опытом
3️⃣ Общение с единомышленниками и заряд мотивации
➡️ А еще, забирай в закрепе БЕСПЛАТНЫЙ вводный курс по Python
Короче, всё для прокачки! Залетай к нам — ссылка на чат (тык)
Узнаем размер файла с помощью Python
C помощью метода os.path модуля os мы можем получить размер любого нашего файла в байтах.
📶 С 1 декабря для граждан РФ открыт доступ к платным материалам по программированию
Вот отсортированные базы с тонной материала(книги, курсы, ресурсы и гайды). Выбирай своё направление:
👩💻 Frontend 👩💻 PHP
⚙️ Backend 👩💻 Моб. Dev
📱 GitHub 👩💻 GameDev
🤓 Всё айти 👩💻 DevOps
👩💻 Python 🖥 Data Science
👩💻 Java 🐞 Тестирование
👩💻 C# 🤔 Хакинг & ИБ
👩💻 С/С++ 📱 Маркетинг
🖥 SQL 🖥 Дизайн
👩💻 Golang 👣 Rust
Скачивать ничего не нужно — все выложили в Telegram с доступом по ссылке
Генерирование случайных предложений с помощью Python
Вы можете использовать random.choiceв, а затем объединить выбранный список с помощью join.
В нашем примере мы задали несколько списков с существительными, глаголами, прилагательными и наречиями и составили предложения, каждое из которых включает в себя 1 элемент из каждого списка слов.
Функция iter и два аргумента
У функции iter есть ещё один вариант использования. Итератор можно получить, если в iter передать первым аргументом обычную функцию, которая при вызове будет возвращать очередной элемент последовательности, а вторым — значение, при возврате которого этой функцией итерация должна закончиться. Давайте посмотрим на примере(см картинку).
Использование lambda в примере необходимо, поскольку переданную в iter функцию должно быть можно вызывать без аргументов. Сконструированный таким образом итератор для получения следующих элементов вызывает переданную функцию снова и снова до тех пор, пока функция не вернёт значение для остановки, при котором итератор генерирует исключение StopIteration, и итерация заканчивается.
❓Что такое абстракция и почему она важна в программировании?
Выбор правильных абстракций помогает для написания качественного кода.
✅ Регистрируйтесь на открытый урок «Абстракция как математический объект» и вы узнаете как абстракции помогают упростить сложные системы и сделать код более понятным.
Урок посвящен курсу «Математика для программистов» от Otus — лучшие практики, после изучения которых вы сможете быстрее изучать новые языки программирования и фреймворки.
👉 Регистрация https://otus.pw/auvn/
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Как написать игру на Python: 5 игровых движков
Туториал для тех, кто хочет сделать игру на Python (и пока не изучать Unity или Unreal Engine). Напишем код простой игры со сбором монет и сравним на трех различных движках, а также сделаем пару игр в стилях Interactive Fiction и визуального романа.
Смотреть статью
Узнаем информацию о номере телефона
phonenumbers - один из модулей, который предоставляет множество функций, таких как предоставление базовой информации о номере телефона, проверка номера телефона и т.д.
Установка модуля - pip install phonenumbers
.
В нашем примере мы узнаем что «+91987654З210» является Индийским номером телефона.
Больше информации вы можете найти здесь.
Разница между генераторными выражениями и генераторами коллекций
Записи в первой и второй строчке в коде выше очень похожи, но различаются видами скобок. В генераторе списка они квадратные, а в генераторном выражении – круглые.
Распечатав переменные, можно заметить, что значением переменной a
является список, а переменная x
хранит в себе объект генератора. И здесь возникает вопрос: что же использовать?
Если вам нужен результат, например, в виде списка, прямо сейчас для дальнейшего выполнения программы, то используйте генераторы коллекций.
А если же значения понадобятся еще не скоро или неизвестно, понадобятся ли вообще, то предпочтительнее использовать генераторы, чтобы не занимать лишнюю память и не нагружать систему.
Размер в байтах
Функция на картинке возвращает длину строки в байтах, что пригодится, когда нужно будет узнать размер строковой переменной в памяти.
Метод dt.weekday()
Метод dt.weekday() возвращает день недели в виде целого числа, где понедельник = 0, а воскресенье = 6.
Как менялась разработка на Python и что нас ждёт дальше
📆 19 декабря собираем предновогодний митап от Яндекса, чтобы подвести итоги 2024 года.
Вспомним об интересных новостях, связанных с языком:
🔸 Обсудим Python 3.12, о котором говорили в прошлом году, и подумаем, какие ожидания оправдались, а какие нет
🔸 Посмотрим на версию 3.13, Faster CPython, jit и nogil
А ещё поговорим о трендах в архитектуре и развитии бэкенд-разработчика на круглом столе с экспертами:
🔸 Николаем Хитровым, тимлидом в Точке
🔸 Евгением Афонасьевым, тимлидом из Авито
🔸 Никитой Соболевым, опенсорс-разработчиком
🔸 Сергеем Яхницким, техлидом в Техплатформе
🔸 Александром Букиным, основателем Pytup
⏭️ Регистрируйтесь на встречу в Москве или подключайтесь к трансляции, где бы вы ни были.
Работа с регистрами
Форматирование текста — это боль каждого data scientist’а. Слова и предложения в разных форматах создают много проблем при очистке данных. Однако и для этих задач в Python есть нужные функции.