Python Lounge: работа и стажировки для программистов
Open in Telegram
Здесь можно найти интересующую вас работу и стажировки для программистов, а так же полезные статьи про Python. Размещение вакансии только - @perezvonyubot Ссылка на канал: @python_lounge Мы входим в сеть promopoisk.com Реклама: @adtgassetsbot
Show more4 245
Subscribers
No data24 hours
-157 days
-6530 days
Posts Archive
Погрузитесь в профессию Data Scientist!
Пройдите бесплатный обучающий интенсив по анализу данных, на котором вы познакомитесь с основами программирования на Python, научитесь ставить гипотезы и делать выводы на основе данных, писать эффективный код и превращать сырые данные в полезную информацию для бизнеса ☝️
Регистрация по ссылке: 👉 https://clc.am/QsgWYw
💡 Вы поработаете с одним из самых популярных языков программирования и научитесь решать реальные задачи, с которыми сталкивается Data Scientist.
💬 Вас ждёт общение с математиком-программистом со стажем более 6 лет и ведущим исследователем данных Сбербанка Анастасией Борневой, которой сможете задать интересующие вас вопросы!
💲 Авторам трёх лучших проектов выдадут сертификаты на 30 000 рублей для обучения в Skillbox!
Используйте отличный шанс начать карьеру Data Scientist 🎉
SberCloud запустили довольно забавную небольшую ролевую игру, позволяющую почувствовать себя в шкуре начинающего стартапера и потренироваться в запуске и поддержке первого проекта.
В стол или в релиз? Проверь, какой из тебя стартапер: https://sc.link/zX7
3 причины, почему стоит учить Python:
— простой и понятный язык, подойдет новичкам;
— востребованный (более 600 вакансий на HH.ru);
— универсальный: можно разрабатывать как игры и приложения, так и системы управления жизнеобеспечением.
Где учить? В SkillFactory, на курсе «Fullstack-разработчик на Python».
Почему там? Потому что на курсе есть:
— 7 онлайн-модулей, объединенных в единую специализацию, чтобы изучить Python максимально глубоко.
— 395 часов обучения на практике.
— 3 сквозных проекта и один итоговый — чтобы пополнить портфолио.
— Помощь менторов и круглосуточная поддержка в общем чате.
Для тех, кто хочет быстрее найти работу по новой профессии предусмотрен бонусный модуль по поиску проектов на фриланс-бирже и взаимодействию с заказчиком.
🚀Запишитесь на курс со скидкой 30% : https://clc.am/w6JA6w
Иногда приходится писать код с несколькими контекстными менеджерами, что выглядит не особо лаконично:
with open('f') as f:
with open('g') as g:
with open('h') as h:
pass
Начиная с Python 2.7 и 3.1, вы можете использовать всего один with:
o = open
with o('f') as f, o('g') as g, o('h') as h:
pass
До этого вы могли бы использовать функцию nested из contextlib:
from contextlib import nested
with nested(o('f'), o('g'), o('h')) as (f, g, h):
passFrontend-разработчики — пожалуй, самые востребованные IT-специалисты здесь и сейчас. Освоить фронтенд — не так уж сложно, особенно если есть хорошие учителя, удобная программа, наставники, кураторы и чат поддержки.
Образовательная экосистема GeekBrains от Mail.Ru Group набирает студентов на новый поток факультета Frontend-разработки для всех, кто хочет найти себя в IT!
Вы сделаете пять проектов для портфолио, получите год опыта frontend-разработки для вашего резюме и освоите престижную специальность.
GeekBrains гарантирует трудоустройство после успешного окончания курса!
Только для подписчиков канала, скидка по промокоду
Сделайте первый шаг в Frontend
За рубежом спецы в IT и Digital получают на 60% больше ребят из СНГ.
Причём половина из них – на удалёнке. Вопрос: зачем рваться за бугор, если американскую зарплату можно получать у себя дома?
Hidden Gurus – это удалённые вакансии от $1600 в крупных компаниях США, Европы, Азии и РФ.
Нет опыта? Работодатели ищут свежую кровь. Боишься волокиты с оформлением? У нас вакансии без посредников, устроишься за несколько дней. Хочешь совмещать работу с личной жизнью? Парт-тайм график тебе понравится, такого у нас много.
Рынок растёт, зарплаты тоже – подписывайся и расти с нами.
Где будет быстрее поиск? При условии 1 млн записей.
Хочешь научиться работать с Python?
Ребята из ProductStar создали курс, который за 2 месяца позволит новичку освоить навыки анализа данных с помощью Python, научиться писать автоматические скрипты, а также работать с визуализацией данных и дашбордами.
Спикеры курса:
— Николай Пекальн, директор по аналитике Vezet group,
— Ришат Исхатов, Head of BA, СберМаркет.
Обучение состоит из 10 блоков и 10 домашек с проверкой от практиков рынка.
По ходу курса ребята помогают лучшим студентам с трудоустройством и подготовкой к собеседованиям.
Для первых 20 студентов действует скидка в 50% — курс можно приобрести всего за 14600 ₽
Подробная программа курса и регистрация по ссылке 👉 https://clck.ru/R78GX
В открытом море можно ориентироваться по звёздам, но лучше — иметь навигатор.
Бесплатный курс Нетологии «Data Science: будущее для каждого» — и есть такой навигатор в море Data Science. Вместе с преподавателями-энтузиастами вы на простых примерах разберёте, как алгоритмы принимают решения, и напишите первый код на языке SQL.
Всё, чтобы вы могли погрузиться в данные и вынырнуть с понимаем, куда плыть дальше. Регистрируйтесь ↓
http://netolo.gy/fRM
Реализация класса контекстного менеджера
Начнем с того, что в контекстном менеджере должны быть определены методы enter и exit. Давайте создадим наш собственный менеджер контекста для открытия файлов и поймем суть его работы.
class NewOpen(object):
def __init__(self, file_name, mode):
self.file = open(file_name, mode)
def __enter__(self):
return self.file
def __exit__(self, type, value, traceback):
self.file.close()
Просто определив методы enter и exit, мы можем использовать наш новый класс с оператором with. Давайте попробуем:
with NewOpen('test.txt', 'w') as file:
file.write('Hello, world!')
Наш метод exit принимает три аргумента. Они требуются для каждого метода exit, который является частью класса.
# testФункция exit создана для удобства работы в интерактивном режиме, однако не рекомендуется использовать её внутри скриптов. Она просто поднимает исключение, и при попытке вызова без скобок пишет подсказку о правильном способе выхода из интерпретатора:
>>> exit
Use exit() or Ctrl-D (i.e. EOF) to exit
>>> exit()
nameless@pycoders:~$
Использовать sys.exit стоит потому, что эта функция лежит в стандартном модуле и будет всегда там доступна. Также это довольно явный способ выразить своё желание завершить программу.
import sys
try:
# code
except:
sys.exit()3 причины, почему стоит учить Python:
— простой и понятный язык, подойдет новичкам;
— востребованный (более 600 вакансий на HH.ru);
— универсальный: можно разрабатывать как игры и приложения, так и системы управления жизнеобеспечением.
Где учить? В SkillFactory, на курсе «Fullstack-разработчик на Python».
Почему там? Потому что на курсе есть:
— 7 онлайн-модулей, объединенных в единую специализацию, чтобы изучить Python максимально глубоко.
— 395 часов обучения на практике.
— 3 сквозных проекта и один итоговый — чтобы пополнить портфолио.
— Помощь менторов и круглосуточная поддержка в общем чате.
Для тех, кто хочет быстрее найти работу по новой профессии предусмотрен бонусный модуль по поиску проектов на фриланс-бирже и взаимодействию с заказчиком.
🚀Запишитесь на курс со скидкой 30%: https://clc.am/VPMhaw
Чему вы хотели бы научить искусственный интеллект? Например, создавать уникальные изображения или текст. А может, виртуозно играть в крестики-нолики?
Приходите на практический онлайн-курс «Deep Learning. Basic» и сделайте свои первые нейронные сети.
📌 За 5 месяцев вы:
- Освежите все необходимые области математики: теорию информации, теорию вероятности, линейную алгебру и основы анализа.
- Попробуете на практике различные направления Deep Learning: Компьютерное зрение, Обработка естественных языков, Обучение с подкреплением, Генеративные сети
- Освоите фреймворки PyTorch, Tensorflow, Keras
Знаний и практики, которые вы получите, будет достаточно, чтобы претендовать на начальные позиции специалиста по нейронным сетям и самостоятельно решать рядовые распространенные задачи.
Пройдите вступительный тест и успейте записаться на курс по спец.цене: https://otus.pw/OhfrR/
⚡ Как проджекту в IT оценивать задачи в зависимости от срочности, размера и сложности работ?
Присоединяйтесь 8 сентября к демо-уроку «Техники оценки Agile проектов для различных контекстов».
Преподаватель Юлия Белозерова за 8 лет в проектном управлении прошла путь от Scrum-master до Technical Program Manager. С ней вы научитесь выбирать нужный способ с зависимости от ситуации: «размеры футболок», человеко-часы, story points, PERT и др. А так же затронете классический инструмент critical path.
Демо-урок является частью программы онлайн-курса «Agile Project Manager», созданной специально для IT-специалистов, стремящихся к карьерному росту в управлении IT-проектами.
✔ Чтобы посетить занятие, регистрируйтесь по ссылке: https://otus.pw/fwUI/
Аннотации типов
Всем известно, что Python – язык с динамической типизацией. Аннотации типов нужны для того, чтобы повысить информативность исходного кода, но они никак не влияют на поведение программы.
Для примера потребуется импортировать типы
List (список) и Dict (словарь) из модуля typing:
from typing import List, Dict
Типы данных указывается через двоеточие после именно переменной после её создания. Создадим словарь с числами и сразу же список, состоящий из значений этого словаря:
numbers: Dict[str, int] = {'one': 1, 'two': 2}
values: List[int] = numbers.values()
Потом создадим функцию, возвращающую сумму переданных значений. В аргументах точно так же можно указывать их типы, а также через стрелочку можно указать типа возвращаемого значения:
def sum(a: int, b: int) -> int:
return a + b
Теперь используем эту функцию, передав туда распакованный список:
sum(*values)
# Output: 3
Однако помните, что аннотации типов не влияют на ход исполнения программы, поэтому в ранее написаную функцию мы с таким же успехом можем передать и строки, хотя указывали целочисленный типа данных:
sum('Python ', 'Lounge')
# Output: 'Python Lounge'Хочешь стать Python-разработчиком? Обучайся на практике! Пройди обучающий интенсив и создай программу для обмена быстрыми сообщениями всего за три дня!
Успей на бесплатную регистрацию: ▶ https://clc.am/jkDqZg.
Ты научишься:
✔ разбираться в различных типах данных, структурах, функциях и ООП;
✔ разрабатывать сервер для прослушивания подключений;
✔ программировать клиентскую часть для подключения и передачи сообщений;
✔ работать с библиотеками PyQT, Kivy, wxWidgets, Tkinter.
📣 Твоим преподавателем будет сооснователь и технический директор в Lia — Никита Левашов.
⭐ Если попадёшь в тройку лучших участников — получишь сертификат на 30 000 рублей для обучения в Skillbox.
Изменение списка во время итерации по нему
Предположим, что требуется удалить все нечетные числа из списка. Проблема со следующим кодом должна быть довольно очевидной:
odd = lambda x: bool(x % 2) # функция проверки числа на нечетность
numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
for i in range(10):
if odd(numbers[i]):
del numbers[i] # удаление элемента из списка во время итерации по нему
# Output:
Traceback (most recent call last):
if odd(numbers[i]):
IndexError: list index out of range
Удаление элемента из списка во время его итерации – это проблема, которая хорошо известна любому опытному разработчику.
К счастью, Python включает в себя ряд элегантных парадигм программирования, которые при правильном использовании могут привести к значительному упрощению и оптимизации кода. Одна из таких парадигм – list comprehensions. Генераторы списков часто используют именно для решения подобных проблем, что и показывает реализация кода ниже:
odd = lambda x: bool(x % 2) # функция проверки числа на нечетность
numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
numbers = [n for n in numbers if not odd(n)] # генератор нового списка
print(numbers)
# Output:
[2, 4, 6, 8, 10]Набор учащихся на совместные образовательные программы Сбербанка
Совместные образовательные программы Сбербанка реализованы в 12 вузах страны от Москвы до Владивостока. Направления подготовки разные — от «Экономики» до «Software Engineering». Обучение доступно как для магистров, так и для бакалавров на конкурсной и коммерческой основе. Узнать подробнее о сроках приемной кампании и образовательных программах можно на онлайн-платформе SberGraduate.
Какие совместные образовательные программы есть?
Национальный исследовательский ядерный университет «МИФИ»: программа дополнительного образования «Информационные технологии в социальных системах»
Московский физико-технический университет: бакалаврская программа «Software Engineering»
Российская академия народного хозяйства и государственной службы при Президенте Российской Федерации: магистерская программа «Финансы и технологии»
Национальный исследовательский университет «Высшая школа экономики»: магистерская программа «Финансовые технологии и анализ данных»
Балтийский федеральный университет им. Канта: магистерская программа «Банковские информационные технологии»
Факультет вычислительной математики и кибернетики МГУ им. М.В. Ломоносова: магистерская программа «Программное обеспечение вычислительных сетей»
Университет ИТМО: магистерские программы «Цифровые технологии умного города», «Информационная безопасность», «Финансовые технологии больших данных», «Робототехника»
Дальневосточный федеральный университет: бакалаврская программа «Экономика» и магистерская программа «Искусственный интеллект и большие данные»
Южный Федеральный Университет: бакалаврская программа «Специализированный курс по обучению Java разработке»
Самарский НИУ академика С.П.Королева: магистерская программа «Data Science»
Уральский федеральный университет: программа дополнительного образования «Сбертех Start» и магистерская программа «Прикладной анализ данных»
Рязанский государственный радиотехнический университет: совместный учебный курс «Business Intelligence», «Архитектура промышленных автоматизированных систем» и «Промышленное программирование на Java»
Digital-выпускной SberGraduate 2020
В конце июля состоялся первый в истории digital-выпускной образовательных программ Сбербанка SberGraduate. Во время онлайн-трансляции новоиспеченные бакалавры и магистры получили напутствия от менеджеров Сбербанка и представителей университетов, прошли тест на уровень развития эмоционального интеллекта и разились за годовую подписку в онлайн-кинотеатре Окко в «Квиз, плиз».
Помимо дипломов выпускники получили именные сертификаты, подписанные Президентом, Председателем Правления Сбербанка Германом Грефом. Многие из выпускников уже получили предложение стать сотрудниками Сбербанка.
Огромное количество вакансий, множество резюме 😱
Бесплатное размещение до 1500 подписчиков! 😱
Успей залететь и найти сотрудника мечты или вакансию, абсолютно бесплатно! 😍
https://t.me/freelancepub
Паттерн проектирования Singleton
Одиночка или же синглтон – это паттерн проектирования, описывающий объект, у которого имеется один единственный экземпляр.
Итак, нам требуется такой класс, который будет при вызове возвращать один и тот же экземпляр, поэтому нам придется переопределить магический метод new.
new__(cls, *args, **kwargs) –– вызывается для создания экземпляра класса, перед вызовом __init. На вход первым аргументом метод принимает сам класс, а возвращать должен уже экземпляр (даже можно экземпляр и другого класса).
class Singleton:
instance = None
def __new__(cls):
if cls.instance is None:
cls.instance = super().__new__(cls)
return cls.instance
Здесь мы проверяем, есть ли значение у атрибута instance. Если нет, то присваиваем атрибуту экземпляр этого же класса. А если уже экземпляр создан, то просто его возвращаем.
То есть при вызове конструктора класса Singleton, будет возвращаться один и тот же объект из памяти.
a = Singleton()
b = Singleton()
Создали два экземпляра, теперь убедимся, что они содержат одинаковый объект.
print(a is b) # True