Forwarded from Библиотека программиста | программирование, кодинг, разработка
🧠⚙️ Как научиться критически мыслить: 6 эффективных способов
Критическое мышление позволяет принимать решения в условиях неопределённости, доносить свои идеи до команды, видеть ошибки в логике, замечать манипуляции. В статье рассказываем, откуда пошло это понятие и как можно развить критическое мышление.
💬Считаете ли вы, что у вас развито критическое мышление?
👍 — да, и это очень помогает мне в жизни и работе
🤔 — да, но оно ничем не помогает
🥱 — нет
Критическое мышление позволяет принимать решения в условиях неопределённости, доносить свои идеи до команды, видеть ошибки в логике, замечать манипуляции. В статье рассказываем, откуда пошло это понятие и как можно развить критическое мышление.
💬Считаете ли вы, что у вас развито критическое мышление?
👍 — да, и это очень помогает мне в жизни и работе
🤔 — да, но оно ничем не помогает
🥱 — нет
👍28🤔7🤯2🤩2
🧹 Библиотека Vulture для поиска неиспользуемого кода
Полезна для очистки и поиска ошибок. Использовать очень легко — достаточно установить и запускать с ней ваши скрипты.
Установка — pip install vulture
Репозиторий с инструкцией
Полезна для очистки и поиска ошибок. Использовать очень легко — достаточно установить и запускать с ней ваши скрипты.
Установка — pip install vulture
Репозиторий с инструкцией
👍15❤3
Очередной #дайджест по Python:
🐍 Как улучшить тестируемость кода на примере внедрения зависимостей в Python
🐍 Mimesis: идеальное решение для генерации данных
Рассказ про библиотеку, которая создаёт синтетические данные различных типов, включая личную информацию, даты, адреса и др.
🐍 Гайд по созданию игры «Виселица» для командной строки на Python
🐍 Регулярные выражения — это не трудно
Автор постарался разложить всё по полочкам.
🐍 Как улучшить тестируемость кода на примере внедрения зависимостей в Python
🐍 Mimesis: идеальное решение для генерации данных
Рассказ про библиотеку, которая создаёт синтетические данные различных типов, включая личную информацию, даты, адреса и др.
🐍 Гайд по созданию игры «Виселица» для командной строки на Python
🐍 Регулярные выражения — это не трудно
Автор постарался разложить всё по полочкам.
👍2🔥2
🧑💻 Статьи для IT: как объяснять и распространять значимые идеи
Напоминаем, что у нас есть бесплатный курс для всех, кто хочет научиться интересно писать — о программировании и в целом.
Что: семь модулей, посвященных написанию, редактированию, иллюстрированию и распространению публикаций.
Для кого: для авторов, копирайтеров и просто программистов, которые хотят научиться интересно рассказывать о своих проектах.
👉Материалы регулярно дополняются, обновляются и корректируются. А еще мы отвечаем на все учебные вопросы в комментариях курса.
Напоминаем, что у нас есть бесплатный курс для всех, кто хочет научиться интересно писать — о программировании и в целом.
Что: семь модулей, посвященных написанию, редактированию, иллюстрированию и распространению публикаций.
Для кого: для авторов, копирайтеров и просто программистов, которые хотят научиться интересно рассказывать о своих проектах.
👉Материалы регулярно дополняются, обновляются и корректируются. А еще мы отвечаем на все учебные вопросы в комментариях курса.
👍5❤2
🏃 Библиотека Termgraph для вывода красивых графиков в терминал
Поддерживает:
🔸Столбчатые диаграммы
🔸Цветовые схемы
🔸Сложенные диаграммы
🔸Гистограммы
🔸Эмодзи
Настраивать графики можно через аргументы командной строки.
Установка — pip install termgraph
Репозиторий на гитхабе с инструкцией и тестовыми данными
Поддерживает:
🔸Столбчатые диаграммы
🔸Цветовые схемы
🔸Сложенные диаграммы
🔸Гистограммы
🔸Эмодзи
Настраивать графики можно через аргументы командной строки.
Установка — pip install termgraph
Репозиторий на гитхабе с инструкцией и тестовыми данными
🤩12❤1👍1🤯1
Float или Decimal: в чём различия и что лучше использовать?
И тот, и другой предназначены для работы с дробными числами, но есть нюанс . Float использует некоторое приближение при работе с числами с плавающей точкой, поэтому может вносить ошибки округления. То есть Float эффективный и быстрый, но не очень точный.
Эта особенность может мешать в некоторых случаях, например, при работе с деньгами. Ошибки округления могут привести к значительным потерям, если обрабатывается большое количество транзакций. Тогда лучше использовать Decimal. Его нужно импортировать — from decimal import Decimal. Передавать на вход следует строку. Как видно на картинке, благодаря Decimal устраняются возможные ошибки округления.
#код
И тот, и другой предназначены для работы с дробными числами
Эта особенность может мешать в некоторых случаях, например, при работе с деньгами. Ошибки округления могут привести к значительным потерям, если обрабатывается большое количество транзакций. Тогда лучше использовать Decimal. Его нужно импортировать — from decimal import Decimal. Передавать на вход следует строку. Как видно на картинке, благодаря Decimal устраняются возможные ошибки округления.
#код
👍29❤3🤯2
6 интересных вещей, которые можно сделать с модулем functools
В статье рассказано о декораторе @cache для кеширования результатов функций, сокращении количества магических методов, инструменте functools.partial для «замораживания» функций и др. Для лучшего понимания есть примеры кода.
Читать статью
В статье рассказано о декораторе @cache для кеширования результатов функций, сокращении количества магических методов, инструменте functools.partial для «замораживания» функций и др. Для лучшего понимания есть примеры кода.
Читать статью
👍9
Forwarded from Библиотека программиста | программирование, кодинг, разработка
🎙️ТОП-14 подкастов о карьере в ИТ
Делимся подкастами, которые помогут вам подготовиться к собеседованиям и лучше понять, как устроен процесс найма в ИТ. Ниже — небольшая подборка, остальные читайте в статье.
👉 NEWHR и СОБЕС — два подкаста от Киры Кузьменко, рекрутера с 20-летним опытом
👉 Хочу в айти — подкаст для новичков, в котором не так много выпусков, но они короткие, ёмкие и интересные.
👉 Выхожу с понедельника — подкаст про разные направления в ИТ
👉 Moscow Python — подкаст о карьере, личном опыте и не только
👉 Podlodka Podcast — популярный подкаст с очень разнообразными и интересными темами, связанными с карьерой в ИТ и другими айтишными направлениями
#подкасты
Делимся подкастами, которые помогут вам подготовиться к собеседованиям и лучше понять, как устроен процесс найма в ИТ. Ниже — небольшая подборка, остальные читайте в статье.
👉 NEWHR и СОБЕС — два подкаста от Киры Кузьменко, рекрутера с 20-летним опытом
👉 Хочу в айти — подкаст для новичков, в котором не так много выпусков, но они короткие, ёмкие и интересные.
👉 Выхожу с понедельника — подкаст про разные направления в ИТ
👉 Moscow Python — подкаст о карьере, личном опыте и не только
👉 Podlodka Podcast — популярный подкаст с очень разнообразными и интересными темами, связанными с карьерой в ИТ и другими айтишными направлениями
#подкасты
А вот и ответ на вопрос про экзотических животных
Преподаватель Ревер Лернер пытался разместить в Facebook (Meta*) рекламу курсов по Python и Pandas. Автор предполагает, что система искусственного интеллекта неверно интерпретировала названия и забанила посты. Апелляция, которую запросил Лернер, была рассмотрена другим ботом и он дал аналогичную оценку.
*организация, деятельность которой запрещена на территории РФ
Преподаватель Ревер Лернер пытался разместить в Facebook (Meta*) рекламу курсов по Python и Pandas. Автор предполагает, что система искусственного интеллекта неверно интерпретировала названия и забанила посты. Апелляция, которую запросил Лернер, была рассмотрена другим ботом и он дал аналогичную оценку.
*организация, деятельность которой запрещена на территории РФ
😁21🤯2👍1
🔥 Генерация простейшей капчи
Используем библиотеку captcha. Для генерации достаточно указать пути к шрифтам, которые вы хотите использовать, и передать методу image.generate набор символов для капчи. Скрипт сохранит её в файл.
Библиотека также поддерживает генерацию аудиокапчи.
Установка — pip install captcha
Репозиторий с инструкцией
Используем библиотеку captcha. Для генерации достаточно указать пути к шрифтам, которые вы хотите использовать, и передать методу image.generate набор символов для капчи. Скрипт сохранит её в файл.
Библиотека также поддерживает генерацию аудиокапчи.
Установка — pip install captcha
Репозиторий с инструкцией
👍21❤2👏2
Forwarded from Библиотека программиста | программирование, кодинг, разработка
Подборка лучших статей «Библиотеки программиста» за октябрь: сохраняй в заметки, чтобы не пропустить #самыйсок
📊 Эффективная работа с JSON в Go
🔝 Лучшие практики Go: путь к чистому коду
📚 ТОП-8 книг по DevOps в 2023 году
💪 6 сервисов для подготовки к техническим собеседованиям
🗺️ Карьерная карта: что это, как ее составить и почему она обязательно нужна разработчику
🛡️ 8 способов защиты от манипуляций на работе
👩💻 Женщины в ИТ: проблемы и преимущества сложной профессии
🤖 8 лучших бесплатных курсов по ИИ и глубокому обучению
👨💻 9 трендов в найме айтишников в 2023 году
🤔 9 мифов об IT и найме айтишников
🤖 25 бесплатных AI-инструментов для разработчиков
☁️ ТОП-10 бессерверных фреймворков
🚩 Итог одной валютной удаленки: проработал месяц бесплатно и ушел с долгами
💻 20 лучших ноутбуков для программиста в 2023 году
🧠 Как научиться критически мыслить: 6 эффективных способов
❔ Результаты ежегодного опроса разработчиков StackOverflow: 20+ главных инсайтов 2023 года
📊 Эффективная работа с JSON в Go
🔝 Лучшие практики Go: путь к чистому коду
📚 ТОП-8 книг по DevOps в 2023 году
💪 6 сервисов для подготовки к техническим собеседованиям
🗺️ Карьерная карта: что это, как ее составить и почему она обязательно нужна разработчику
🛡️ 8 способов защиты от манипуляций на работе
👩💻 Женщины в ИТ: проблемы и преимущества сложной профессии
🤖 8 лучших бесплатных курсов по ИИ и глубокому обучению
👨💻 9 трендов в найме айтишников в 2023 году
🤔 9 мифов об IT и найме айтишников
🤖 25 бесплатных AI-инструментов для разработчиков
☁️ ТОП-10 бессерверных фреймворков
🚩 Итог одной валютной удаленки: проработал месяц бесплатно и ушел с долгами
💻 20 лучших ноутбуков для программиста в 2023 году
🧠 Как научиться критически мыслить: 6 эффективных способов
❔ Результаты ежегодного опроса разработчиков StackOverflow: 20+ главных инсайтов 2023 года
👍8❤1
☕Почему бы не начать утро субботы с чтения статьи про файлы .pyd?
Файлы с расширением .pyd в Python похожи на библиотеки динамической компоновки (DLL) в Windows. Их можно импортировать как обычные файлы .py. Если попытаться открыть .pyd, то увидеть исходный код будет невозможно.
Автор рассказывает, как создавать такие файлы и как их использовать.
Читать статью
Файлы с расширением .pyd в Python похожи на библиотеки динамической компоновки (DLL) в Windows. Их можно импортировать как обычные файлы .py. Если попытаться открыть .pyd, то увидеть исходный код будет невозможно.
Автор рассказывает, как создавать такие файлы и как их использовать.
Читать статью
👏16
❤️ Библиотека для вывода текста в консоль в виде ASCII-графики
Это полный порт FIGlet — программы, генерирующей текстовые баннеры. Библиотека pyfiglet обладает той же функциональностью, поддерживает разные шрифты. Можно обойтись и вовсе без скрипта .py и вывести текст сразу через командную строку — pyfiglet I love Python
Установка — pip install pyfiglet
Репозиторий с инструкцией
Это полный порт FIGlet — программы, генерирующей текстовые баннеры. Библиотека pyfiglet обладает той же функциональностью, поддерживает разные шрифты. Можно обойтись и вовсе без скрипта .py и вывести текст сразу через командную строку — pyfiglet I love Python
Установка — pip install pyfiglet
Репозиторий с инструкцией
👍13🔥5
one_line_python.pdf
2.7 MB
👍26🔥4👏3❤2
Что делает флаг PYTHONOPTIMIZE?
Флаг PYTHONOPTIMIZE — это переменная окружения, которая позволяет задавать уровень оптимизации для компилятора Python.
Когда этот флаг установлен в значение 1 или 2, интерпретатор Python использует оптимизацию байт-кода для ускорения работы программы. Оптимизация включает в себя удаление никак не используемых переменных и функций, а также замену медленных операций на более быстрые.
Флаг PYTHONOPTIMIZE имеет следующие значения:
0 — оптимизация не используется.
1 — включена базовая оптимизация (удаление никак не используемых переменных и функций).
2 — включена оптимизация (удаление никак не используемых переменных и функций, замена медленных операций на более быстрые).
Важно отметить, что использование этого флага может приводить к неожиданным результатам и ошибкам в работе программы, поэтому его использование необходимо осуществлять с осторожностью.
#вопросы_с_собеседований
Флаг PYTHONOPTIMIZE — это переменная окружения, которая позволяет задавать уровень оптимизации для компилятора Python.
Когда этот флаг установлен в значение 1 или 2, интерпретатор Python использует оптимизацию байт-кода для ускорения работы программы. Оптимизация включает в себя удаление никак не используемых переменных и функций, а также замену медленных операций на более быстрые.
Флаг PYTHONOPTIMIZE имеет следующие значения:
0 — оптимизация не используется.
1 — включена базовая оптимизация (удаление никак не используемых переменных и функций).
2 — включена оптимизация (удаление никак не используемых переменных и функций, замена медленных операций на более быстрые).
Важно отметить, что использование этого флага может приводить к неожиданным результатам и ошибкам в работе программы, поэтому его использование необходимо осуществлять с осторожностью.
#вопросы_с_собеседований
👍23
🧍♂️🧍🧍♀️ Как реализовать очередь в Python
Очереди (Queues) — одна из структур данных, используемая для хранения коллекций элементов в порядке first-in, first-out (FIFO). Всё, как в настоящей очереди, — кто первым вошёл, то раньше всех и вышел.
В Python очереди можно реализовать с помощью класса deque() из модуля collections или модуля queue.
🧍♀️Чтобы добавить элементы в очередь: в deque используем метод append(), в Queue — put()
🧍Чтобы удалить элементы из очереди: в deque — метод popleft(), в Queue — get()
🧍♂️Чтобы проверить размер очереди, используем len()
Стоит отметить, что queue.Queue предназначен для многопоточного программирования.
#код
Очереди (Queues) — одна из структур данных, используемая для хранения коллекций элементов в порядке first-in, first-out (FIFO). Всё, как в настоящей очереди, — кто первым вошёл, то раньше всех и вышел.
В Python очереди можно реализовать с помощью класса deque() из модуля collections или модуля queue.
🧍♀️Чтобы добавить элементы в очередь: в deque используем метод append(), в Queue — put()
🧍Чтобы удалить элементы из очереди: в deque — метод popleft(), в Queue — get()
🧍♂️Чтобы проверить размер очереди, используем len()
Стоит отметить, что queue.Queue предназначен для многопоточного программирования.
#код
👍27❤2
🧑💻 Что делает функция takewhile() модуля itertools
Функция создаёт итератор, возвращающий элементы из итерируемого объекта до тех пор, пока указанное условие истинно (True или 1). Как только условие становится ложным, итератор прекращает свою работу и больше не возвращает элементы.
В примере takewhile будет возвращать элементы из списка my_list, пока они меньше пяти. Как только встретится элемент, равный или больший пяти, работа прекратится.
#код
Функция создаёт итератор, возвращающий элементы из итерируемого объекта до тех пор, пока указанное условие истинно (True или 1). Как только условие становится ложным, итератор прекращает свою работу и больше не возвращает элементы.
В примере takewhile будет возвращать элементы из списка my_list, пока они меньше пяти. Как только встретится элемент, равный или больший пяти, работа прекратится.
#код
👍26❤3👏2🤔1
🔥 Библиотека Humanize для простого преобразования числовых данных в удобный для человека вид
Например, dt.timedelta(seconds=3) можно одной строчкой преобразовать в «3 секунды назад» или 1_000_000 в «976.6 KiB» . Библиотека поддерживает русский и ещё 27 языков.
🕚 Установка — pip install humanize
Страница на PyPI
Например, dt.timedelta(seconds=3) можно одной строчкой преобразовать в «3 секунды назад» или 1_000_000 в «976.6 KiB» . Библиотека поддерживает русский и ещё 27 языков.
🕚 Установка — pip install humanize
Страница на PyPI
👍14
⭐ Продолжаем изучать модуль itertools. Сегодня — функция starmap()
starmap() принимает в качестве аргументов другую функцию и итерируемый объект, элементы которого представлены кортежами. Переданная функция применяется к каждому из кортежей, каждый кортеж распаковывается, и его элементы передаются в функцию как отдельные аргументы.
🌟 Таким образом, starmap() можно использовать вместо map(), если данные были предварительно упакованы в кортежи.
В примере starmap() позволяет вычислить квадраты чисел в кортежах в списке и сложить их.
#код
starmap() принимает в качестве аргументов другую функцию и итерируемый объект, элементы которого представлены кортежами. Переданная функция применяется к каждому из кортежей, каждый кортеж распаковывается, и его элементы передаются в функцию как отдельные аргументы.
🌟 Таким образом, starmap() можно использовать вместо map(), если данные были предварительно упакованы в кортежи.
В примере starmap() позволяет вычислить квадраты чисел в кортежах в списке и сложить их.
#код
👍24🥰2