⌨️ DIY-клавиатура из фанеры
В воскресное утро предлагаем прочесть текст о том, как энтузиаст собрал клавиатуру с нуля. Для этого ему понадобились: Raspberry Pi Pico, переключатели Gateron полноразмерные, кейкапы (кнопки), фанера и код на Python.
🐍 Если быть точнее, автор использовал инструмент с сайта https://kmkfw.io/, который позволяет настраивать клавиатуру, просто меняя текст в блокноте.
Финальный код управляющего скрипта и все подробности можно увидеть в статье 👈
Фото: drogman
В воскресное утро предлагаем прочесть текст о том, как энтузиаст собрал клавиатуру с нуля. Для этого ему понадобились: Raspberry Pi Pico, переключатели Gateron полноразмерные, кейкапы (кнопки), фанера и код на Python.
🐍 Если быть точнее, автор использовал инструмент с сайта https://kmkfw.io/, который позволяет настраивать клавиатуру, просто меняя текст в блокноте.
Финальный код управляющего скрипта и все подробности можно увидеть в статье 👈
Фото: drogman
👍10
Что такое контекстный менеджер в Python?
Контекстный менеджер в Python — это специальный тип объекта, который определяет методы enter() и exit() и используется с инструкцией with. Эти объекты часто применяются в операциях, которые требуют установки и освобождения ресурсов.
Частый сценарий — это работа с файлом:
Здесь контекстный менеджер гарантирует, что файл будет корректно закрыт после завершения блока with, даже если при чтении файла возникнет исключение.
🔨 Вот как можно написать простой контекстный менеджер самостоятельно:
#вопросы_с_собеседований
Контекстный менеджер в Python — это специальный тип объекта, который определяет методы enter() и exit() и используется с инструкцией with. Эти объекты часто применяются в операциях, которые требуют установки и освобождения ресурсов.
Частый сценарий — это работа с файлом:
with open('file.txt', 'r') as file:
data = file.read()
Здесь контекстный менеджер гарантирует, что файл будет корректно закрыт после завершения блока with, даже если при чтении файла возникнет исключение.
import time
class Timer:
def __enter__(self):
self.start = time.time()
def __exit__(self, exc_type, exc_val, exc_tb):
self.end = time.time()
print(f'Время выполнения: {self.end - self.start:.2f} секунд')
with Timer():
# код, время выполнения которого нужно измерить
time.sleep(2)
#вопросы_с_собеседований
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥31👍9🥰4
🐍 У нас есть еженедельная email-рассылка, посвященная последним открытиям и тенденциям в мире Python.
В ней:
● Новые возможности в последних версиях Python
● Работа с базами данных и SQL в Python
● Веб-разработка на Django и Flask
● Машинное обучение и анализ данных с помощью Python
● Автоматизация и работа с API на Python
● Тестирование и отладка кода на Python
● Задачи для новичков с решениями
👉Подписаться👈
В ней:
● Новые возможности в последних версиях Python
● Работа с базами данных и SQL в Python
● Веб-разработка на Django и Flask
● Машинное обучение и анализ данных с помощью Python
● Автоматизация и работа с API на Python
● Тестирование и отладка кода на Python
● Задачи для новичков с решениями
👉Подписаться👈
👍6❤1
✍️ Как читать пользовательский ввод в Python
Это новый подробный туториал от Real Python. Статья объясняет, как считывать ввод пользователя с клавиатуры при помощи функции input(). Она рассматривает такие темы, как:
▪️считывание различных типов данных,
▪️обработка ошибок,
▪️ чтение нескольких вводов от пользователя.
Также обсуждается защита чувствительных данных с использованием модуля getpass и автоматизация проверки ввода с помощью PyInputPlus.
🔗 Ссылка на статью
Это новый подробный туториал от Real Python. Статья объясняет, как считывать ввод пользователя с клавиатуры при помощи функции input(). Она рассматривает такие темы, как:
▪️считывание различных типов данных,
▪️обработка ошибок,
▪️ чтение нескольких вводов от пользователя.
Также обсуждается защита чувствительных данных с использованием модуля getpass и автоматизация проверки ввода с помощью PyInputPlus.
🔗 Ссылка на статью
👍9
This media is not supported in your browser
VIEW IN TELEGRAM
🥤🛡️ Как сделать Flask-приложение неуязвимым: полное руководство по защите от хакерских атак
Лучшие практики по созданию надежного и безопасного Flask-приложения, включая защиту от XSS/CSRF и API, созданных с помощью Flask.
👉 Читать статью
👉 Зеркало
Лучшие практики по созданию надежного и безопасного Flask-приложения, включая защиту от XSS/CSRF и API, созданных с помощью Flask.
👉 Читать статью
👉 Зеркало
😁26🔥11❤3❤🔥2
Давайте напишем функцию, которая вычисляет значение такого выражения: (e^x - 1)/x.
def f(x):
return (math.exp(x)-1)/x
Про это выражение мы знаем, что предел при x, стремящемся к нулю, будет равен единице. Можем подставить некоторые очень малые x, чтобы проверить. При x=1e-9 Python-функция вернёт 1.000000082740371, при x=1e-12 — 1.000088900582341, а при x=1e-15 — 1.1102230246251565. То есть ошибка составляет уже более 10%! Чем меньше x, тем больше ошибка.
Что с этим делать? Автор новой статьи предлагает использовать такой трюк:
def g(x):
y = math.exp(x)
return (y-1)/math.log(y)
И это сработает. Теперь при x=1e-15 мы получим 1.0000000000000004. Но почему так можно делать?
Об этом читайте в статье 👈
Please open Telegram to view this post
VIEW IN TELEGRAM
😁11👍7👏1
🐍🤖 Подборка Python-библиотек с ML-моделями
👩🦳 RetinaFace — инструмент для обнаружения лиц на изображениях. Утверждается, что его можно применять в приложениях, требующих обработки в реальном времени.
🦄 Stable Diffusion WebUI Forge — удобный веб-интерфейс для работы с моделью Stable Diffusion. Подойдёт даже тем, у кого относительно слабое железо.
🔉 Ultimate Vocal Remover GUI — библиотека для удаления вокала из аудиозаписей.
🚗 SAHI — библиотека для компьютерного зрения, предназначенная для работы с задачами по обнаружению объектов и сегментации на больших масштабах.
📖 deepdoctection — инструмент для извлечения данных из документов и анализа их макета с использованием моделей глубокого обучения.
💬 Vosk — инструмент для распознавания речи, который поддерживает более 20 языков и диалектов.
👩🦳 RetinaFace — инструмент для обнаружения лиц на изображениях. Утверждается, что его можно применять в приложениях, требующих обработки в реальном времени.
🦄 Stable Diffusion WebUI Forge — удобный веб-интерфейс для работы с моделью Stable Diffusion. Подойдёт даже тем, у кого относительно слабое железо.
🔉 Ultimate Vocal Remover GUI — библиотека для удаления вокала из аудиозаписей.
🚗 SAHI — библиотека для компьютерного зрения, предназначенная для работы с задачами по обнаружению объектов и сегментации на больших масштабах.
📖 deepdoctection — инструмент для извлечения данных из документов и анализа их макета с использованием моделей глубокого обучения.
💬 Vosk — инструмент для распознавания речи, который поддерживает более 20 языков и диалектов.
👍11❤2🔥2
💬 Какие ещё языки, помимо Python, вы знаете?
❤️ — Java
👍 — JavaScript
🤔 — C/C++
🔥 — Go
🥰 — Swift/Kotlin
🤩 — Другой (пишите в комментарии)
#интерактив
❤️ — Java
👍 — JavaScript
🤔 — C/C++
🔥 — Go
🥰 — Swift/Kotlin
🤩 — Другой (пишите в комментарии)
#интерактив
🤔100👍66🔥38❤36🤩29🥰9🌚4👾4
🧑💻 Статьи для IT: как объяснять и распространять значимые идеи
Напоминаем, что у нас есть бесплатный курс для всех, кто хочет научиться интересно писать — о программировании и в целом.
Что: семь модулей, посвященных написанию, редактированию, иллюстрированию и распространению публикаций.
Для кого: для авторов, копирайтеров и просто программистов, которые хотят научиться интересно рассказывать о своих проектах.
👉Материалы регулярно дополняются, обновляются и корректируются. А еще мы отвечаем на все учебные вопросы в комментариях курса.
Напоминаем, что у нас есть бесплатный курс для всех, кто хочет научиться интересно писать — о программировании и в целом.
Что: семь модулей, посвященных написанию, редактированию, иллюстрированию и распространению публикаций.
Для кого: для авторов, копирайтеров и просто программистов, которые хотят научиться интересно рассказывать о своих проектах.
👉Материалы регулярно дополняются, обновляются и корректируются. А еще мы отвечаем на все учебные вопросы в комментариях курса.
👍2❤1
Open_AI_Python.pdf
17 MB
🦾 Шпаргалка OpenAI на Python
Небольшая шпаргалка поможет быстро начать работу с API OpenAI. В ней показано:
▪️как добавить API-ключ и посмотреть доступные модели,
▪️как генерировать текст с помощью GPT,
▪️как работать с эмбеддингами,
▪️как конвертировать речь в текст,
▪️как создавать изображения с помощью DALL-E.
Небольшая шпаргалка поможет быстро начать работу с API OpenAI. В ней показано:
▪️как добавить API-ключ и посмотреть доступные модели,
▪️как генерировать текст с помощью GPT,
▪️как работать с эмбеддингами,
▪️как конвертировать речь в текст,
▪️как создавать изображения с помощью DALL-E.
👍25
💤 Функция sleep(): что это и для чего нужна
Иногда необходимо, чтобы код, написанный на Python, выполнялся не сразу, а мог «подождать» какое-то время. Например, вам нужна задержка, чтобы успел скачаться какой-то файл. Или необходимы паузы между вызовами API или запросами к базе данных.
💡Для решения этих задач можно пользоваться функцией
☑️ Использовать sleep() из модуля time.
☑️ Использовать с asyncio.
Позволяет вызывать sleep() асинхронно.
Иногда необходимо, чтобы код, написанный на Python, выполнялся не сразу, а мог «подождать» какое-то время. Например, вам нужна задержка, чтобы успел скачаться какой-то файл. Или необходимы паузы между вызовами API или запросами к базе данных.
💡Для решения этих задач можно пользоваться функцией
sleep()
, которая приостанавливает выполнение вызывающего потока. Как это сделать?☑️ Использовать sleep() из модуля time.
import time
time.sleep(3) # будет "спать" 3 секунды
☑️ Использовать с asyncio.
Позволяет вызывать sleep() асинхронно.
import asyncio
async def main():
print('Hello ...')
await asyncio.sleep(1)
print('... World!')
# Python 3.7+
asyncio.run(main())
👍18🔥4❤3
🧑💻 Парень сделал Telegram-бота для массовых откликов на вакансии. Вот что у него вышло
Свою историю он рассказал на «Хабре». Парень использовал HeadHunter API. В нём есть метод отклика на вакансии. Автору сразу пришла в голову идея создать бота для отправки сотен откликов за пару минут.
▶️ Во-первых, он увидел, что у метода есть ограничения: можно отправить максимум 200 откликов в день. Во-вторых, оказалось, что автоматизация откликов плохо работает на успех. Из более чем 1000 откликов парень получил более 500 автоотказов, приглашения без результата, десятки переносов вакансий в архив, 4-5 тестовых. Остальные были не просмотрены.
Эксперимент расстроил автора: он удивился, что найти работу настолько тяжело.
Свою историю он рассказал на «Хабре». Парень использовал HeadHunter API. В нём есть метод отклика на вакансии. Автору сразу пришла в голову идея создать бота для отправки сотен откликов за пару минут.
▶️ Во-первых, он увидел, что у метода есть ограничения: можно отправить максимум 200 откликов в день. Во-вторых, оказалось, что автоматизация откликов плохо работает на успех. Из более чем 1000 откликов парень получил более 500 автоотказов, приглашения без результата, десятки переносов вакансий в архив, 4-5 тестовых. Остальные были не просмотрены.
Эксперимент расстроил автора: он удивился, что найти работу настолько тяжело.
👍20😁6🤔1
💬 А как вы относитесь к платным курсам по программированию?
Блогер опросил больше тысячи айтишников о том, как они попали в профессию. Платные курсы помогли только 10% респондентов(да, к выборке есть вопросы, и этот результат не отражает истину)
А проходили ли вы платные курсы? Нашли ли вы работу после этого? Делитесь в комментариях
❤️ — проходил платные курсы, они оказались мне полезны, у меня нет претензий
👾 — проходил платные курсы, в целом нормально, но цена кажется слишком высокой за такие материалы
🤔 — проходил платные курсы, они оказались совсем бесполезны
👍 — учился только по бесплатным материалам
#интерактив
Блогер опросил больше тысячи айтишников о том, как они попали в профессию. Платные курсы помогли только 10% респондентов
А проходили ли вы платные курсы? Нашли ли вы работу после этого? Делитесь в комментариях
❤️ — проходил платные курсы, они оказались мне полезны, у меня нет претензий
👾 — проходил платные курсы, в целом нормально, но цена кажется слишком высокой за такие материалы
🤔 — проходил платные курсы, они оказались совсем бесполезны
👍 — учился только по бесплатным материалам
#интерактив
👍122❤54👾28🤔6😁1
Forwarded from Библиотека программиста | программирование, кодинг, разработка
🐱🎨🙏🤖 10 самых странных языков программирования, о которых вы никогда не слышали
Эзотерические языки разрабатывают в концептуальных, экспериментальных и развлекательных целях. Их общая черта — максимально запутанный и странный синтаксис, понятный только посвященным. В этой подборке — языки, которые выбрали бы Ходор, доктор Лектер, Малевич, Джеймс Бонд, Терминатор и Луи Армстронг, если бы решили войти в айти.
👉 Читать статью
👉 Зеркало
Эзотерические языки разрабатывают в концептуальных, экспериментальных и развлекательных целях. Их общая черта — максимально запутанный и странный синтаксис, понятный только посвященным. В этой подборке — языки, которые выбрали бы Ходор, доктор Лектер, Малевич, Джеймс Бонд, Терминатор и Луи Армстронг, если бы решили войти в айти.
👉 Читать статью
👉 Зеркало
👍8