Microservices | Вопросы с Собеседований
- Подборка вопросов по микросервисной архитектуре с реальных собеседований
- Авторские статьи по архитектуре, проектированию, базам данных
- Автор - Lead Developer с 8 лет опыта на Java/Kotlin
Что нам стоит диаграмму в Python построить: 5 вариантов привлекающей внимание визуализации данных и кое-что ещё
Диаграммы помогают визуализировать как простые, так и самые сложные наборы данных. При этом диаграмм — множество видов, у каждого есть свои достоинства и недостатки. О наиболее эффектных и эффективных, реализуемых с Python, мы решили рассказать в сегодняшней подборке.
Смотреть статью
Узнаем время года с помощью Python
Для определения времени года можно использовать текущий месяц и сопоставить его с нужным временем года.
В этом примере мы используем модуль datetime
для получения текущей даты и времени. Затем мы сравниваем текущий месяц с нужными месяцами для каждого времени года и определяем соответствующий сезон.
Правильное подключение к БД: почему, зачем и как
Как подключить базу данных? Казалось бы, простейший вопрос, однако частенько здесь совершают ошибки. Как правило, даже если сделать всё плохо, проблем не возникнет, но это до поры до времени. Как только проект вырастет и увеличится нагрузка, эти ошибки дадут о себе знать, и отследить их будет сложно.
В этой небольшой статье, я последовательно буду создавать подключения к БД, а затем показывать на примере, что может пойти не так.
Смотреть статью
Узнаем сколько свободной памяти на компьютере
Для того, чтобы узнать сколько свободной памяти доступно на компьютере с помощью Python можно использовать модуль psutil.
Метод virtual_memory()
возвращает объект с информацией о памяти системы. Свойство available
объекта содержит количество свободной памяти в байтах.
Извлекаем имя из адреса электронной почты
Для извлечения имени из адреса электронной почты до символа ‘@‘ можно использовать регулярные выражения.
Это регулярное выражение начинает поиск с начала строки с помощью символа "^" и находит любую комбинацию строчных букв, цифр, дефисов, подчеркиваний, точек и знака минуса. Затем выражение находит символ "@" и останавливается.
cv3 — делаем OpenCV питоничным
cv3 - обёртка над opencv-python, которая ускоряет написание кода, не сужая функциональность
Смотреть статью
Отвлекись от серьезных тем, заходи к нам и наслаждайся смешными мемами и гифками про беспощадную борьбу между программистами и кодом!
@nophumor
Cравнение 2 аудиосообщений
Для сравнения двух аудиосообщений в Python нужно использовать библиотеку для анализа звука, например, librosa или PyAudio.
Здесь мы загружаем два файла и вычисляем их характеристики MFCC (Mel Frequency Cepstral Coefficients), которые представляют собой набор коэффициентов, описывающих звуковое пространство. Затем мы вычисляем расстояние между характеристиками с помощью функции dtln из librosa.core. Результат будет выведен в консоль.
Обратите внимание, что для сравнения аудиосообщений нужно, чтобы они имели одинаковую продолжительность и были записаны в одинаковых условиях (например, громкость, обработка шума).
Соединение списка и множества в словарь
Для соединения списка и множества в словарь можно использовать встроенную функцию zip()
. Эта функция объединяет элементы нескольких последовательностей (`списков`, множеств
, кортежей
и т.д.) в кортежи.
Для создания словаря из списков и множеств нужно сначала объединить элементы в кортежи при помощи функции zip()
, а затем создать словарь из этих кортежей при помощи функции dict()
.fruit_prices
будет содержать словарь {'apple': 1.20, 'banana': 0.80, 'orange': 1.50}
.
Перебираем все возможные 8 значные пароли состоящие из букв и цифр с помощью Python
В этом примере используется модуль itertools
, который позволяет генерировать все возможные комбинации символов из списка characters
длиной password_length
. Затем перебираются все комбинации и выводятся на экран.
Обратите внимание, что перебор всех возможных 8-значных паролей может занять большое количество времени, особенно если количество символов в characters
большое. Будьте осторожны и убедитесь, что ваше намерение соответствует законам и этическим правилам.
Быстрая сортировка
Быстрая сортировка (quicksort) — это один из наиболее известных и широко применяемых алгоритмов сортировки. Она основана на использовании стратегии "разделяй и властвуй".
В этом коде мы выбираем элемент в середине списка в качестве "опорного". Затем мы создаем три списка: один для элементов меньше опорного, один для элементов равных опорному, и один для элементов больше опорного.
Мы рекурсивно применяем быструю сортировку к списку элементов, которые меньше и больше опорного элемента. Это продолжается до тех пор, пока не останется список, который нужно сортировать. В конце, мы объединяем отсортированные списки вместе.
Функция tell()
Функция tell()
используется для получения текущей позиции указателя в потоке данных. Она применяется чаще всего при работе с файлами, но также может использоваться с другими типами потоков, например, сокетами или консольным вводом.
Возвращаемое значение: целое число, указывающее положение указателя в байтах от начала потока.
Аргументы: tell()
не принимает никаких аргументов.
#для_начинающих
Сокращение ссылок прямо в коде
Иногда возникает необходимость сделать ссылку более короткой. Для этого пригодится библиотека pyshorteners — с помощью трех строк кода и сервиса tinyurl она позволяет быстро создать короткую ссылку.
Узнаем количество фотографий в папке
Вы можете использовать модуль os в Python для получения списка файлов в папке и подсчета количества файлов с расширением изображения.
Просто замените /путь/к/папке на фактический путь к вашей папке с фотографиями. Код будет подсчитывать количество файлов с расширениями .jpg, .jpeg, .png и .gif. Если вам нужно учитывать другие типы файлов, вы можете добавить соответствующие расширения в список photo_extensions.
Сравниваем 2 лица на фото с помощью Python
Для сравнения двух лиц на фото в Python можно использовать библиотеку face_recognition
.
В этом примере мы сначала загружаем изображения лиц и находим лица на изображениях с помощью функции face_locations()
.
Затем мы кодируем найденные лица с помощью функции face_encodings()
и сравниваем их между собой с помощью функции compare_faces()
. Результат сравнения - список булевых значений (True или False), которые сообщают, совпадают ли два лица на фото.
В чем разница между is() и == в Python?
Операторы is и == в Python выполняют похожие функции, но работают немного по-разному. И если вы новичок, используете сравнения в коде, стоит понимать разницу. Это поможет реже прибегать к рефакторингу и дебагу.
Смотреть статью
Ищем опечатки
Пакет spellchecker
позволяет отыскать ошибки в тексте, а также может предложить варианты исправлений. В примере проходимся по списку из двух слов, из которых одно ('therre') написано с опечаткой. Функция correction
замечает это и предлагает одно самое вероятное исправление, а candidates
— несколько.
Пакет поддерживает шесть языков.
Документацию можно найти здесь.
❗️Как развиваться Python-разработчику?
Наращивать объем знаний и навыков. За этим приходите на вебинар, приуроченный к старту онлайн-курса «Python Developer. Professional» в OTUS.
✅ 21 декабря — «Создаем REST API для сайта на Django»
🔹На занятии вы получите полное представление о принципах, инструментах и передовых методах создания надежного API, который легко интегрируется с проектами Django.
🔹 Урок охватывает весь процесс проектирования и внедрения REST API: от настройки исходной среды до обработки аутентификации и оптимизации производительности.
🔥 Результат урока:
Вы создадите проект Django для разработки API и приобретите знания по тестированию, отладке и развертыванию веб-сайтов Django с помощью RESTful API.
👉 ПРОЙТИ ТЕСТ для регистрации на открытый урок
https://otus.pw/bF7s/?erid=LjN8Juz6u
Реклама. ООО "ОТУС ОНЛАЙН-ОБРАЗОВАНИЕ". ИНН 9705100963
Узнаем сколько раз встречается каждая буква в предложении
Код представлен на картинке.
Поиск объектов на изображении. Часть 1
Компьютерное зрение - удивительная область, которая позволяет компьютерам видеть и понимать мир через обработку изображений и видео.
Смотреть статью
Удаляем файл из папки на компьютере
Для удаления файла из папки на ПК в Python можно использовать модуль os.
Здесь сначала мы импортируем модуль os. Затем указываем полный путь к удаляемому файлу в переменной file_path
. С помощью функции os.path.exists()
проверяем, существует ли файл по указанному пути.
Если файл существует, мы удаляем его с помощью функции os.remove()
. В противном случае выводим информацию, что такой файл не найден.
ХОЧЕШЬ ПОВЫШЕНИЕ В 2024 ГОДУ? 😎🔥
Тогда самое время разобраться в микросервисной архитектуре и стать более востребованным специалистом.
🚀 Курс ведет действующий архитектор Кирилл Ветчинкин. Он успешно реализовал проекты для Мегафона, Теле2, ВСS Brокer. Постоянный спикер крупных IT-конференций.
Какие скиллы прокачаем:
📌 Декомпозиция систем на микросервисы, отталкиваясь от бизнес-домена.
📌 Встройка микросервисов в оргструктуру компании.
📌Организация перехода от монолитной системы к микросервисной.
Полная программа ТУТ 👉https://microarch.ru/?utm_source=posev&utm_medium=erid%2VtzqwzHJsM&utm_campaign=3
А самое главное — поддержка от спикера, чат с одногруппниками и полезные созвоны с разбором домашки.
📕 Сертификат об участии по итогам прохождения курса.
Узнай больше о курсе 👉 https://microarch.ru/?utm_source=posev&utm_medium=erid%2VtzqwzHJsM&utm_campaign=3
Реклама. ИП Ветчинкин К.Е. ИНН: 773376451099 Erid: 2VtzqwzHJsM
Почему от кандидатов на Middle и Senior-должности в крупных IT-компаниях требуют знания алгоритмов?
Расскажем на открытом уроке Теория графов.
С Евгением Волосатовым – профессиональным программистом, преподавателем языка Java и автором курсов по C#, Java и PHP подробно разберём теорию графов и ее составляющие, а также сделаем обзор первой половины программы курса «Алгоритмы и структуры данных».
🔥 Вебинар подойдет бэкенд-разработчикам на любых языках программирования начального и среднего уровня и системным программистам. Доступно обучение в рассрочку.
💻 Занятие пройдёт 26 декабря в 20:00 мск.
🌐 Для бесплатного участия и получения записи пройдите короткое тестирование прямо сейчас: https://otus.pw/y9V2/?erid=LjN8K54wa
Реклама. ООО "ОТУС ОНЛАЙН-ОБРАЗОВАНИЕ". ИНН 9705100963.
Как создать свой мод для Cyberpunk 2077? Шерстим исходники, Lua, C++ и Python
Необходимо в реальном времени перехватывать информацию об уроне, который получает персонаж, и передавать ее на контроллер жилета.
Смотреть статью
Митап для начинающих IT-специалистов пройдет в Москве
⚡ Будут лекции про Backend, Data Science, InfoSec и карьеру в финтехе, прожарка резюме, лайфхаки быстрого роста от джуна до сеньора, демонстрация квантового компьютера, оживление аватара при помощи нейросети и after-party с выступлением кавер-группы.
P.S.: 🎁 Каждому участнику подарят велком пэк с мерчем.
Участие бесплатное, но нужно зарегистрироваться!
📅 16 декабря
📍 Москва, ул. Покровка, д. 47 (м. Красные ворота / м. Курская)
🔗 Регистрация тут
Реклама. БАНК ГПБ (АО). ИНН 7744001497.