Python Lounge: работа и стажировки для программистов
4.1K subscribers
93 photos
1.17K links
Здесь можно найти интересующую вас работу и стажировки для программистов, а так же полезные статьи про Python.

Размещение вакансии только - @perezvonyubot

Ссылка на канал: @python_lounge

Мы входим в сеть promopoisk.com

Реклама: @adtgassetsbot
Download Telegram
Switch-конструкция с помощью словаря

К сожалению, в Python не существует switch-конструкций, в отличие от большинства других языков программирования, и поэтому приходится строить башни из условных операторов в своём коде.

Однако есть одно хитрое решение — использовать словарь, где значениями будут функции. Например, напишем словарь, который будет использован для математических операторов.

switch = {
'+': lambda x, y: x + y,
'-': lambda x, y: x - y,
'*': lambda x, y: x * y,
'/': lambda x, y: x / y
}

В этом примере были использованы lambda-функции для простоты, но вместо них можете подставить любые другие. Для тех, кто не знает: lambda - объявление анонимной функции (можно косвенно сравнить с def); x, y - принимаемые аргументы; x + y - то, что функция возвращает.

result = switch['*'](4, 5)
print(result)
# Output: 20

Примерно вот так мы можем пользоваться подобной штукой. Думаю, что многие найдут полезное применение подобному использованию словарей.
​​Проекты на Python для новичков
«Виселица»
«Виселица» это более продвинутый вариант игры в угадайку. Пользователь должен угадывать буквы в загаданном слове. Может показаться, что это слишком сложно для первых проектов, но погодите. Самая базовая версия такой игры может быть просто текстовой и не требовать какой-то графики.
Для начала, вам нужен список слов, из которых система будет выбирать одно слово случайным образом. Для этого можно использовать, например, словарь Sowpods (файл можно скачать на GitHub). Дальше вам понадобится подходящая функция для проверки, ввел ли пользователь букву и есть ли такая буква в выбранном слове (а если есть, то сколько там таких букв). Также ваш код должен выводить на экран правильно угаданные буквы и ограничивать количество попыток при помощи счетчика (переменная типа integer).
Использование Python для Raspberry PI
Еще один отличный вариант для начинающих — использование Raspberry Pi. Этот маленький компьютер часто используется для обучения программированию. Raspberry Pi Foundation уделяет особое внимание тому, чтобы сделать программирование доступным для юношества. Этот микрокомпьютер маленький, довольно мощный (для своих задач) и недорогой: он может стоить от 5 до 50 долларов.


Используя Raspberry Pi, можно создавать сайты, приложения и даже углубиться в робототехнику. Если подсоединить к этой машине монитор, клавиатуру и мышь, он может работать, как обычный компьютер. Но, настроив его, вы можете управлять им удаленно — тут-то и начинается все самое интересное!
На Raspberry Pi Code Club можно найти небольшой учебный план по освоению основ Python. Есть там и несколько маленьких проектов, например, создание игры «Камень, ножницы, бумага» и программ-шифровальщиков. Освоив работу с Raspberry Pi, вы сможете использовать его для создания самых разных вещей, включая робот-будильник и камеры слежения для вашего дома.
Идеи проектов на Python для программистов среднего уровня
Доведя до конца несколько интересных проектов, вы почувствуете себя куда более сильным программистом. Что дальше? Можно браться за более сложные проекты. Как насчет следующих?
Веб-проекты
Не следует забывать, что в первую очередь Python это язык веб-разработки. Почему бы не создать несколько простых веб-проектов? Таким образом вы можете получить программы для личного пользования, а также приобрести навыки, которые вам пригодятся при поисках новой работы.
Python можно применять для извлечения информации с сайтов, что делает его весьма подходящим языком для создания агрегаторов контента. Хорошим примером такого проекта может послужить AllTop. Вы выбираете интересующую вас тему, а система подбирает вам соответствующие заголовки из самых популярных. Это действительно проект для уже опытного программиста, поскольку вам нужно будет хранить информацию в базе данных и использовать специфические библиотеки Python для HTTP-запросов и парсинга контента.

Еще одна идея — написание приложения для создания заметок. Такая программа позволяет пользователю что-то записывать, а позже возвращает записи. Сложная часть такого проекта — добавление личных аккаунтов. У каждого пользователя должны быть его личные заметки, доступ к которым должен быть только у него (причем доступ откуда угодно, это же веб-проект). Самый простой способ реализовать нечто подобное — использовать для создания приложения фреймворк Django.
Оператор pass делает абсолютно ничего, то есть совсем ничего. В ходе исполнения данного оператора ничего не происходит, поэтому он может использоваться в качестве некой заглушки в тех местах, где это синтаксически необходимо.

Например, вам надо сделать несколько функций, вы написали def'ы и названия, но сам код еще не успели, однако программу надо запустить и проверить что-то другое. Вот тут и понадобится pass.

def func():
pass

Ну или в конструкции try-except, чтобы просто проигнорировать и никак не обрабатывать ошибку в программе.

try:
any_function()
except:
pass

В общем, полезная штука, используйте.

🐍Накидайте ещё полезных лайфхаков в комментарии
​​Python: распознавание объектов в реальном времени
В этой статье мы будем разбирать код программы, в которой используется Deep Learning и OpenCV. Её суть: распознавание объектов в реальном времени.
Читать статью.
​​Распознавание текста с картинки. Python Tesseract ORC + OpenCV
Сегодня мы с вами поговорим на тему языка Python и рассмотрим пример создания крутого приложения. Наша программа будет способна считывать текст из любой фотографии.
Статья.
🐍Задача про словарь

Я вижу, что вам больше нравится практика, нежели теория 🙂
Сегодня я разберу одну из олимпиадных задач, довольно простую.
Суть задачи в том, чтобы из англо-латинского словаря сделать латино-английский.

Обсудить можем в нашем чате
​​- "Как я шашки писал"

Предыстория
Так уж получилось, что моим первым более-менее серьёзным проектом, связанным с программированием, была реализация шашек для «Шага в будущее». К несчастью, доделать его до конца у меня так и не получилось, так как через некоторое время концепция проекта резко поменялась. Несмотря на это, программа была практически готова и с ней даже можно было играть, к тому же сам процесс её написания оказался весьма интересным, поэтому я решил поделиться теми идеями и алгоритмами, которые сумел придумать.
--------
Полная статья.
--------
Обсудить проект или просто пообщаться можем в нашем чате
Друзья, вам нравится контент, который я пилю?

Если да - отправьте канал или любой пост своим знакомым, которым это будет полезно.

Последние посты:
🐍 Как написать шашки на Python
🐍 Распознавание текста с картинки
🐍 Разбор проектов для новичков
🐍13 лучших книг по Python для начинающих и продолжающих

Давайте делать наше сообщество еще шире.

Подписывайтесь на наш канал @python_lounge
И на наш ламповый чат
Только что поступил запрос провести онлайн-хакатон с призами.

Будет 3 темы на выбор, поделимся на команды по 3-5 человек (сильные и новички в команде) и разработаем прототипы/альфа версии Будете участвовать, если организуем?
Anonymous Poll
69%
Да
31%
Нет
​​Обучаемый Telegram чат-бот с ИИ в 30 строчек кода на Python
--------
Полная статья.
--------
Обсудить проект или просто пообщаться можем в нашем чате.
Всем хорошей субботы!

На днях написал пост про no-code инструменты в моем втором канале @cccoding и статья вызвала бурный интерес. Подумал, мб и вам зайдёт.

​​Подборка про no-code

Итак, я сделал подборку с инструментами (их на самом деле сильно больше) и примерами приложений, написанных на них

1. Bubble
(создание мобильных и веб-приложений)

Все очень просто - берете готовые компоненты приложений и кастомизируете его. Приложение хорошего уровня реально собрать за 1-2 недели.

Примеры: бухгалтерский инструмент для фрилансеров и мобильное приложение для геймификации обучения

2. Glide и Adalo
(быстрые конструкторы мобильных приложений)

Примеры: приложение необычного фитнес-клуба и приложение для поиска наставника из диджитал

3. Integromat
(автоматизация процессов, интеграция)

Автоматизируем рассылки, статистику, управление сотрудниками и многое другое

Примеры: автоматическое информирование клиентов о предстоящих событиях

Давайте обсуждать в нашем чате
​​Что отличает хорошего работодателя для IT-специалистов от остальных компаний?

Поделитесь своим мнением в небольшом опросе и получите гарантированный приз — промокод на бесплатную книгу от Альпина Паблишер, а также возможность выиграть сертификаты в ReStore или Ozon на 10 тысяч рублей.

Участвовать могут:
— IT-специалисты со всей России.
— Опыт работы: от 1,5 лет.

Пройдите опрос до 16 апреля включительно: https://clc.am/lQbWcw
​​Алгоритм Дейкстры лежит в основе многих востребованных современных сервисов, к числу которых относятся GPS навигация и маршрутизация состояния канала сетевого уровня. Используя некоторые базовые структуры данных, мы разберемся, что именно он делает, каким образом достигает цель и как реализовать алгоритм в Python.
Что делает алгоритм Дейкстры
Алгоритм Дейкстры находит кратчайший путь между двумя вершинами графа. Следовательно, если математические задачи моделируется при помощи графа, используя алгоритм Дейкстры, можно найти кратчайший путь между вершинами.
Реализация на нашем любимом питоне в и разложенный до мелочей объяснение алгоритма статье, а пообщаться и обсудить пост можно в нашем чате.
​​Всем думаю попадались рассылки в разных месседнджерах, чаще всего это порисходит в WhatsApp.
Оказывается сделать эту рассылку массовым на нашем любимом python не составляет труда. Вот как за одну строчку отправить письмо в WhatsApp.
Во первых установливаем модуль pywhatkit
$ pip install pywhakit
И затем сам код
pywhatkit.sendwhatmsg("Moblie Number", "Message", 20,10)
#Первый аргумент - какому номеру отправить сообщение
#Второй аргумент - что отправить получателю
#Третий аргумент - Время в часах
#Четвертый аргумент - Время в минутах

Готово.
Oбсудить пост можно в нашем чате.
​​Мы уже рассмотрели алгоритм Дейкстры, но оина не является самым оптимальным алгоритмом.
И так...
Реализация алгоритма A*
Поиск по графам — это семейство схожих алгоритмов. Существует множество вариаций алгоритов и их реализаций. Относитесь к коду этой статьи как к отправной точке, а не окончательной версии алгоритма, подходящей ко всем ситуациям.
Статья с разбором.

Oбсудить пост можно в нашем чате.
​​#вакансия

Разработчик Ruby on rails в Watch!theDIGIT

Обязанности:
— Разработка бэкэнд сервиса позволяющего пользователям взаимодействовать со смарт-контактом на блокчейне Ethereum
— Есть возможность поучаствовать в работе над другими нашими сервисами, которые также написаны на Ruby

Требования:
— Наш бэкэнд стэк: Ruby 2.5, Rails 5, PostgreSQL, Redis, Sidekiq, Docker, Ansible, Elastic Stack
— Большим плюсом будет знание блокчейн технологий в принципе, и умение писать на Solidity в частности
— Также приветствуется знакомство с Vue.js и отсутствие отвращения от необходимости править что-то на фронте

Условия:
— Гибкий график, приятный коллектив, печеньки-апельсинки
— З/П от 200 000 рублей в месяц

Отклик: @usernameisM 

+7 926 118-18-44 Максим (удобнее telegram, whatsapp или m@wtd.ru)
+7 905 752-40-09 Александр
Объединяя C++ и Python. Тонкости Boost.Python.
Симбиоз Python и C++ активно используется для реализаций чатботов, эта смесь быстроты и динамичности создаёт по настоячщему комфортные условия для разработчиков и юзеров.
Как их интегрировать в один проект читайте в статье.
[ Статья ]
Oбсудить пост и просто пообщаться можно в нашем чате.
​​Важные методы в Python которые должен знать каждый питонист.

abs() - Возвращает модуль переданного параметра.

all() - Функция all() возвращает значение True , если все элементы в итерируемом объекте - истинны, в противном случае она возвращает значение False.

any() - Функция any() возвращает True, если какой-либо (любой) элемент в итерируемом объекте является истинным True, в противном случае any() возвращает значение False.

ascii() - ascii () возвращает строку, содержащую печатное представление объекта, и экранирует символы, отличные от ASCII, в строке с помощью экранирования \ x, \ u или \ U.

bin() - Функция bin() преобразует целое число в двоичную строку с префиксом 0b.
Результатом будет binary string - двоичная версия заданного целого числа x.

bool() - Возращает False если значение объекта 0 в противном случае возвращает True

dict() - Создание словаря
Пустой словарь можно создать, используя функцию dict(), либо просто указав пустые фигурные скобки.
>>> d1 = dict()
>>> print(type(d1))
<class 'dict'>
>>> d2 = {}
>>> print(type(d2))
<class 'dict'>


eval() - это встроенная функция, используемая в python, функция eval анализирует аргумент выражения и оценивает его как выражение python.Проще говоря, функция eval оценивает «String» как выражение Python и возвращает результат как целое число.

float() - преобразование к числу с плавающей точкой. Если аргумент не указан, возвращается 0.0.

hash() - Возвращает целое являющееся хешем объекта.
Хеш используется, в частности, для быстрого сравнения ключей при поиске по словарям.

help() - Функция предназначена в основном для использования в интерактивном режиме интерпретатора.
​​В ВТБ открыты сразу четыре вакансии для IT-специалистов с опытом работы в отрасли.

1. Системный аналитик: https://clc.am/hsnI0Q
— На позиции вы будете анализировать и моделировать новые бизнес-процессы, тестировать ПО и заниматься разработкой.

2. QA-инженер: https://clc.am/8rZG4A
— Вы будете заниматься разными видами тестирования, работать в кросс-функциональной команде по методологиям scrum и двухнедельным спринтам, взаимодействовать со смежными экспертизами.

3. Java-разработчик: https://clc.am/IbddNQ
— Ваши задачи - это разработка приложений с использованием микросервисной архитектуры, участие в code review и написание unit-тестов.

4. DevOps-специалист: https://clc.am/vXn6dQ
— Вы будете заниматься развертыванием и поддержкой программных продуктов для разработки и тестирования, а также работать с системами мониторинга IT-процессов.

Присоединяйтесь к ВТБ и вы получите:
— достойную заработную плату и соц.пакет;
— живые и интересные проекты;
— команда из лучших профессионалов, среди более 5000 IT-специалистов компании;
— карьерный рост и возможность выбора направления развития.

Выбирайте подходящую вакансию и отправляйте резюме до 23 апреля включительно.