Языки
● Python, JavaScript, TypeScript, C#, Go, SQL.
Тематика
● Информационная безопасность, Data Science, базовые концепции языков, продвинутый Python, JS (и т. д), бэкенд веб-приложений, фронтенд-разработка, React, системное программирование, базы данных.
Объем
● от 7 до 15 тыс. знаков.
➡️ Заполнить анкету ⬅️
Я хорошо программирую, но пишу «так себе». Что делать?
Если вы хорошо программируете, но навыки письма немного отстают, пройдите наш бесплатный курс на Степике «Статьи для IT: как объяснять и распространять значимые идеи».
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10❤4
🐍📚 ТОП-15 книг по Python для начинающих и опытных разработчиков в 2023 году
Список книг на русском языке по языку программирования Python для начинающих и опытных разработчиков. Книги упорядочены по возрастанию уровня сложности. Также описываются преимущества и недостатки, на которые указывают сами читатели в отзывах.
🔗 Основной сайт
🔗 Зеркало
Список книг на русском языке по языку программирования Python для начинающих и опытных разработчиков. Книги упорядочены по возрастанию уровня сложности. Также описываются преимущества и недостатки, на которые указывают сами читатели в отзывах.
🔗 Основной сайт
🔗 Зеркало
👍13❤5🔥2🎉1
Новости Python
🐍 Python 3.12.0 Alpha 7 уже доступен
🐍 pandas 2.0 получил серьезное обновление с интеграцией PyArrow
🐍 pip 23.1 получил улучшенный преобразователь зависимостей
🐍 PyCon US 2023 отмечает свое двадцатилетие
🐍 PyPI представляет доверенных издателей и учетные записи организаций
🐍 PSF выражает обеспокоенность по поводу предлагаемой политики ЕС
Подробнее
🐍 Python 3.12.0 Alpha 7 уже доступен
🐍 pandas 2.0 получил серьезное обновление с интеграцией PyArrow
🐍 pip 23.1 получил улучшенный преобразователь зависимостей
🐍 PyCon US 2023 отмечает свое двадцатилетие
🐍 PyPI представляет доверенных издателей и учетные записи организаций
🐍 PSF выражает обеспокоенность по поводу предлагаемой политики ЕС
Подробнее
👍19❤8🔥2
#вопросы_с_собеседований
Как работает any() и all()?
Any() принимает последовательность и возвращает true, если какой-либо элемент в последовательности равен true.
All() возвращает истину, только если все элементы в последовательности истинны.
Как работает any() и all()?
Any() принимает последовательность и возвращает true, если какой-либо элемент в последовательности равен true.
All() возвращает истину, только если все элементы в последовательности истинны.
👍20❤5
Telegram Django Bot за пару строк
Для разработки ботов не нужно тратить много сил и писать тонны кода. Достаточно использовать готовые шаблоны и подстраивать их под свой проект. В этой статье опытный создатель ботов разбирает ускоренный способ и применяет фреймворк Django.
https://habr.com/ru/articles/734786/
Для разработки ботов не нужно тратить много сил и писать тонны кода. Достаточно использовать готовые шаблоны и подстраивать их под свой проект. В этой статье опытный создатель ботов разбирает ускоренный способ и применяет фреймворк Django.
https://habr.com/ru/articles/734786/
Хабр
Telegram Django Bot за пару строк
На Хабре много статей про разработку Телеграм ботов на Python, в том числе при помощи Django. Однако, большинство из них направлено на первичное ознакомление с API Телеграм. В этой статье я хочу...
👍13❤11👏2🔥1🥰1
docstring
docstring — это строковый литерал, который по PEP должен быть сразу после определения названия для модуля, функции, класса или метода. Создаётся с помощью трех двойных кавычек.
В Python docstring игнорируются интерпретатором и не могут быть выполнены. Однако, когда вы добавляете docstring в модуль, функцию и так далее, эта строка становится специальным атрибутом, к которому можно получить доступ через
docstring — это строковый литерал, который по PEP должен быть сразу после определения названия для модуля, функции, класса или метода. Создаётся с помощью трех двойных кавычек.
В Python docstring игнорируются интерпретатором и не могут быть выполнены. Однако, когда вы добавляете docstring в модуль, функцию и так далее, эта строка становится специальным атрибутом, к которому можно получить доступ через
__doc__
.👍17❤8
Порядок разрешения методов
В Python существует так называемый Method Resolution Order (MRO), или порядок разрешения методов в классе. Всё, что вам нужно знать – это порядок, в котором Python ищет нужный атрибут или метод.
Этот порядок можно получить при помощи атрибута
Отсюда становится понятно, что артибут первее будет найден именно в классе B и равен он будет значению 1.
В Python существует так называемый Method Resolution Order (MRO), или порядок разрешения методов в классе. Всё, что вам нужно знать – это порядок, в котором Python ищет нужный атрибут или метод.
Этот порядок можно получить при помощи атрибута
__mro__
. Он говорит о том, что если мы в примере выше попробуем обратиться к атрибуту value
, Python будет искать сначала в классе A
, далее в B
, затем в C
и в самом конце в object
. Отсюда становится понятно, что артибут первее будет найден именно в классе B и равен он будет значению 1.
👍11❤9🔥1🥰1👏1
Генерируем анекдоты
Не самый полезный, но весьма интересный пакет
Метод
Также можно указать категорию в аргументах — особенно классно заходят штуки про Чак Норриса с пометкой
#pyjokes
Не самый полезный, но весьма интересный пакет
pyjokes
выдает различные шутки и анекдоты на 6 языках. Но русский, к сожалению, в это число не входит.Метод
get_joke()
возвращает строку, которая хранит в себе случайную шутку. В аргументы можно указать язык, по умолчанию стоит английский.Также можно указать категорию в аргументах — особенно классно заходят штуки про Чак Норриса с пометкой
'chuck'
.#pyjokes
❤11👍8😁5
🐍 Проверка подлинности: как оценить качество пакетов Python
Из этой статьи вы узнаете критерии, по которым можно оценить качество пакетов Python и способы избежать загрузки вредоносного кода в свой проект.
🔗 Основной сайт
🔗 Зеркало
Из этой статьи вы узнаете критерии, по которым можно оценить качество пакетов Python и способы избежать загрузки вредоносного кода в свой проект.
🔗 Основной сайт
🔗 Зеркало
❤7👍5🔥3
Вы когда-нибудь обманывали на собеседованиях?
Anonymous Poll
57%
Нет
14%
Да, о причинах увольнения
22%
Да, об опыте работы
8%
Другое (напишу в комментариях)
❤7👍2
Проверяем скорость интернета
Каждый хоть раз проверял скорость своего интернета на Speedtest. А у них, оказывается, есть не только сайт и приложения, но и пакет на Python для этого дела.
У объекта класса Speedtest методы download() и upload() выдают соответственно скорость скачивания и загрузки данных.
Методы отдают результат в байтах, поэтому для наглядности в примере я перевел все данные в мегабайты при выводе.
Каждый хоть раз проверял скорость своего интернета на Speedtest. А у них, оказывается, есть не только сайт и приложения, но и пакет на Python для этого дела.
У объекта класса Speedtest методы download() и upload() выдают соответственно скорость скачивания и загрузки данных.
Методы отдают результат в байтах, поэтому для наглядности в примере я перевел все данные в мегабайты при выводе.
👍23❤6
➕➖ Нужна ли математика программисту?
Считается, что стать программистом без хорошего знания математики невозможно. Разберемся, так ли это на самом деле.
🔗 Основной сайт
🔗 Зеркало
Считается, что стать программистом без хорошего знания математики невозможно. Разберемся, так ли это на самом деле.
🔗 Основной сайт
🔗 Зеркало
🔥6
This media is not supported in your browser
VIEW IN TELEGRAM
#дайджест из Больших курсов по Python. Хотите выучить язык за короткое время? :) Попытайте удачу с одним из этих курсов:
🐍 Весь Python за 7 часов
🐍 Основы Python за час
🐍 Полный курс по Python
🐍 Создание игры в стиле Zelda на Python [с некоторыми элементами Dark Souls]
🐍 Продвинутый курс программирования на Python
🐍 Весь Python за 7 часов
🐍 Основы Python за час
🐍 Полный курс по Python
🐍 Создание игры в стиле Zelda на Python [с некоторыми элементами Dark Souls]
🐍 Продвинутый курс программирования на Python
👍18❤3
Отправляем запросы с HTTPX
Интересный пакет для работы с веб-запросам. Как говорят сами разработчики, это HTTP клиент следующего поколения.
Сравнивая с привычным requests, у httpx есть следующие преимущества:
— Стандартный синхронный интерфейс, но также есть поддержка асинхронности
— Поддержка HTTP/1.1 и HTTP/2
— Возможность отправлять запросы напрямую к WSGI и ASGI приложениям
— Полная поддержка аннотаций типов
— 100% покрытие тестами
В общем, очень классная альтернатива большинству популярных пакетов, советую посмотреть их доки (https://www.python-httpx.org/). Еще у них есть туториал (https://www.python-httpx.org/advanced/) для продвинутого использования.
Интересный пакет для работы с веб-запросам. Как говорят сами разработчики, это HTTP клиент следующего поколения.
Сравнивая с привычным requests, у httpx есть следующие преимущества:
— Стандартный синхронный интерфейс, но также есть поддержка асинхронности
— Поддержка HTTP/1.1 и HTTP/2
— Возможность отправлять запросы напрямую к WSGI и ASGI приложениям
— Полная поддержка аннотаций типов
— 100% покрытие тестами
В общем, очень классная альтернатива большинству популярных пакетов, советую посмотреть их доки (https://www.python-httpx.org/). Еще у них есть туториал (https://www.python-httpx.org/advanced/) для продвинутого использования.
👍9❤2
Классы данных
Еще в Python 3.7 добавили такую мощную штуку, как классы данных. Они призваны автоматизировать генерацию кода классов, которые используются для хранения данных.
Встроенный модуль dataclasses содержит декоратор @dataclass. С его использованием код будет выглядеть лаконично и коротко. Пример на картинке выше.
Важно отметить, что аннотации типов обязательны. Все поля, которые не имеют отметок о типе будут проигнорированы. Конечно, если вы не хотите использовать конкретный тип, вы можете указать Any из модуля typing.
В результате вы автоматически получаете класс, с реализованными методами __init__, __repr__, __str__ и __eq__. Кроме того, это будет обычный класс и вы можете наследоваться от него или добавлять произвольные методы.
Еще в Python 3.7 добавили такую мощную штуку, как классы данных. Они призваны автоматизировать генерацию кода классов, которые используются для хранения данных.
Встроенный модуль dataclasses содержит декоратор @dataclass. С его использованием код будет выглядеть лаконично и коротко. Пример на картинке выше.
Важно отметить, что аннотации типов обязательны. Все поля, которые не имеют отметок о типе будут проигнорированы. Конечно, если вы не хотите использовать конкретный тип, вы можете указать Any из модуля typing.
В результате вы автоматически получаете класс, с реализованными методами __init__, __repr__, __str__ и __eq__. Кроме того, это будет обычный класс и вы можете наследоваться от него или добавлять произвольные методы.
🔥14👍6❤2
Нужно ли программисту высшее образование?
Anonymous Poll
33%
Да, нужно (работаю программистом, окончил технический ВУЗ)
8%
Не нужно (работаю программистом, не оканчивал технический ВУЗ)
12%
Не нужно (работаю программистом, окончил технический ВУЗ)
12%
Да, нужно (работаю программистом, самоучка/курсы)
18%
Не нужно (работаю программистом, самоучка/курсы)
17%
Другое (напишу в комментариях)
👍6
Выделение базовой части слов
При обработки естественного языка в машинном обучении мы сталкиваемся с множеством форм слова, например, демократия и демократизация. Для машин очень важно понимать, что эти разные слова имеют одинаковую базовую форму.
Таким образом, было бы полезно при анализе текста извлекать базовые формы слов. Можно сказать, что для процесса выделения базовой части слова необходимо обрезать концы слов.
В модуле Python NLTK (Natural Language Toolkit Package) есть различные пакет, связанные с данным процессом выделения базовой части и использующие разные алгоритмы.
Один за пакетов, snowball, использует алгоритм соответственно Snowball, разработанный Мартином Портером. Алгоритм поддерживает большинство популярных языков. Подробнее об алгоритме можно почитать тут (https://snowball.tartarus.org/).
При обработки естественного языка в машинном обучении мы сталкиваемся с множеством форм слова, например, демократия и демократизация. Для машин очень важно понимать, что эти разные слова имеют одинаковую базовую форму.
Таким образом, было бы полезно при анализе текста извлекать базовые формы слов. Можно сказать, что для процесса выделения базовой части слова необходимо обрезать концы слов.
В модуле Python NLTK (Natural Language Toolkit Package) есть различные пакет, связанные с данным процессом выделения базовой части и использующие разные алгоритмы.
Один за пакетов, snowball, использует алгоритм соответственно Snowball, разработанный Мартином Портером. Алгоритм поддерживает большинство популярных языков. Подробнее об алгоритме можно почитать тут (https://snowball.tartarus.org/).
👍8