Python School
82.2K subscribers
2.42K photos
8 videos
578 links
Уроки по Python, которые упростят вам жизнь. Без идиотских туториалов.

Наши мемы для программистов: @conhum

Сотрудничество - @alivian

Канал сотрудничает с рекламным сервисом @Tgpodbor_official

РКН: clck.ru/3G6pBb
Download Telegram
Anonymous required

Этот декоратор основан на декораторе login_required Django, но работает противоположно, и проверяет, является ли пользователь анонимным, в противном случае пользователь перенаправляется на веб-сайт, определенный в нашем файле settings.py, и может быть полезен, когда мы хотим защитить пользовательские вьюшки, такие как вход в систему или регистрация.
Хотите узнать, как заставить деньги работать? Мы расскажем!

«Личные финансы» — курс с государственной аккредитацией от крупнейшего в России и СНГ финансового онлайн-университета SF Education. Вы узнаете, как эффективно распоряжаться деньгами: оптимизировать расходы, находить новые источники дохода и достигать своих финансовых целей.

Этот курс для вас, если вы хотите:
Повысить свою финансовую грамотность
Научиться разумно инвестировать, структурировать знания финансового рынка и получать пассивный доход
Заставить свои деньги работать, а не работать ради денег

Спикер курса — практикующий трейдер и инвестор, который за последние 4 года увеличил свой доход от инвестиций и грамотного управления финансами в 96 раз.

После курса вы сможете:
Оптимизировать расходы без ущерба своему комфорту
Распоряжаться финансами так, чтобы хватало на всё
Планировать личный и семейный бюджет
Приумножать капитал и получать доход выше банковского вклада с минимальным риском

За 2 месяца вы не только с нуля обучитесь финансовой грамотности, но и получите подарок — авторский тренинг от бывшего вице-президента банка Goldman Sachs.

Интересно? Записывайтесь на обучение.

Возьмите личные финансы под контроль!
re.compile()

С помощью этого метода регулярные выражения компилируются в объекты шаблона и могут использоваться в других методах. Рассмотрим это на примере поиска совпадений с шаблоном.
Вы — новичок в программировании или начинающий разработчик? Познакомьтесь с одним из самых популярных и востребованных языков программирования — Python!

Подробности — по ссылке: 👉 https://clc.to/zHjZfA.

Что вас ждёт?
⚡️ Изучение азов программирования на Python и разбор основных элементов языка.
⚡️ Создание программы-сервера для прослушивания подключений.
⚡️ Разработка интерфейса мессенджера.
⚡️ Работа с библиотеками PyQt, Kivy, wxWidgets, tkinter.

Вашим наставником будет инженер-исследователь научной группы ADASE в Сколтехе, выпускник кафедры системного анализа ВМК МГУ и Техносферы MailRu — Эмиль Богомолов.

🎁 Сдайте домашнее задание и получите сертификат стоимостью 5 000 рублей на любой курс Skillbox.

Подключайтесь к бесплатному онлайн-интенсиву с 30 сентября по 2 октября в 21:00 по московскому времени!
Преобразуем список в словарь при помощи генератора словаря (ч.1)

Для преобразования списка Python в словарь также можно использовать генератор словаря.

Генератор словаря похож на генератор списка в том, что оба они создают новое значение соответствующего типа данных.

Что касается синтаксиса, в генераторе словаря используются фигурные скобки {}, а в генераторе списка — квадратные [ ].
Преобразуем список в словарь при помощи генератора словаря (ч.2)

Для начала мы объявили список фруктов (fruits), где хранятся их названия, которые мы хотим перенести в словарь.

Затем мы использовали генератор словаря, чтобы пройтись по каждому элементу в списке fruits. Для каждого фрукта в нашем списке мы добавили элемент в новый словарь. При этом каждому фрукту мы присвоили значение In stock.
Если хотите построить карьеру в аналитике данных, но не знаете, с чего начать и с чем вы можете столкнуться на своем карьерном пути, присоединяйтесь к митапу Skillbox и Beeline Университета. Карьерные консультанты и опытные эксперты в области работы с данными расскажут:

🔸как начинающему специалисту найти свою нишу;
🔸что делать после того, как вы закончили курс по Dаta Science;
🔸из каких профессий приходят в Data Science;
🔸как автоматизация помогает развитию бизнеса.

Кроме того, узнаете об этапах профессионального роста в Data Science и Data Analyst, о трендах в индустрии на примере Beeline, о soft skills и технологиях, которыми обязательно нужно овладеть любому DS-эксперту.

Подробности и регистрация 👉 https://clc.to/5e6Jxg
Создание ключей RSA. (ч.1)

Если вам нужно зашифровать ваши данные при помощи RSA, тогда вам также нужно получить доступ к паре ключа RSA public / private, или сгенерировать собственную. В данном примере мы генерируем собственную пару ключей.

Сначала мы импортируем RSA из Crypto.PublicKey. Затем, мы создаем примитивный код доступа. Далее, мы генерируем ключ RSA на 2048 битов.
Забудьте о range(len()). Наш выбор — enumerate()

Часто возникают ситуации, когда нужно перебрать коллекцию и отслеживать индексы элементов, к которым вы получили доступ. Для этих целей многие использует range(len(коллекция)).

Функция enumerate возвращает enumerate-объект, который хранит в себе и индексы элементов, и их значения.

С помощью этой функции вы облегчите доступ и к индексам, и к значениям.

Рассмотрим пример, в котором видна разница между range(len(коллекция)) и enumerate(коллекция).
Ищете высокооплачиваемую работу на стыке аналитики и IT? Рассказываем про идеальный вариант — работу бизнес-аналитиком!

«Бизнес-аналитик» — курс профессиональной переподготовки с государственной аккредитацией от крупнейшего в России и СНГ финансового онлайн-университета SF Education.

Вы научитесь:
Управлять бизнес-проектами
Решать задачи бизнес-анализа с помощью четырех языков программирования
Моделировать и оптимизировать бизнес-процессы
Использовать финансовые и продуктовые метрики и формировать бюджет компании

Среди преподавателей курса — бывший вице-президент банков Goldman Sachs и Wells Fargo и другие крупные руководители из ведущих мировых компаний со стажем более 8 лет.

Поможем с трудоустройством в компанию «Большой четверки»:
Партнер курса — международная аудиторская компания KPMG — приглашает студентов курса пройти первый этап отбора на исключительных условиях
Личный куратор и HR-консультант приведут ваше резюме к лучшему виду и подготовят к собеседованию

Все еще сомневаетесь? Воспользуйтесь нашими специальными условиями:
— Рассрочкой на 24 месяца
— Первым платежом через 6 месяцев
— Кэшбэком 10% от Тинькофф Банка

А еще мы возвращаем 15% от стоимости курса для 20 лучших студентов.

Записывайтесь https://clck.ru/Xxzrs на обучение.
Сделайте самую ценную инвестицию в свое будущее!
ASCII-текст

По умолчанию json.dump проверяет, имеет ли ваш текст в словаре кодировку ASCII. Если присутствуют символы, отличные от ASCII, они автоматически экранируются.

Но это не всегда приемлемо. Во многих случаях вы бы хотели сохранить символы Unicode нетронутыми.
11–13 октября в 21:00 по московскому времени пройдёт бесплатный онлайн-интенсив по работе с Python. Всего за 3 дня вы познакомитесь с основами универсального языка и технологиями искусственного интеллекта. А ещё с помощью BotFather создадите первый полноценный проект — Telegram-бота.

Регистрируйтесь: ▶️ https://clc.to/zNX_cg.

🔥 Изучите структуру данных Python, Machine Learning и сможете сразу применить теорию на практике. Создадите чат-бота, научите его говорить и подключите к Telegram.

☝️ Куратором будет ведущий исследователь данных (NLP) в Сбербанке — Николай Герасименко.


⭐️ Все участники получат электронную книгу Кей Петерсон и Дэвида Колба «Век живи — век учись» издательства МИФ. А те, кто сдаст практическую работу, — сертификаты на 10 000 рублей. Их можно будет потратить на любой курс образовательной платформы Skillbox!
Процесс делегирования в Python (ч.1)

Делегирование – это объектно-ориентированный подход, также называемый паттерном проектирования.

Предположим, у вас есть объект x, и вы хотите изменить поведение только одного из его методов. Вы можете создать новый класс, предоставляющий новую реализацию метода, который вы хотите изменить, и делегирующий все остальные методы соответствующим методам объекта x.
Процесс делегирования в Python (ч.2)

В примере показан класс, охватывающий поведение файла и преобразующий данные из нижнего в верхний регистр

Метод write() в классе upcase конвертирует строку из нижнего в верхний регистр до вызова другого метода. Собственно сама делегация осуществляется за счет использования объекта self._out.
Работа с переменными класса и экземпляра одновременно

Переменные класса и переменные экземпляра часто используются одновременно. Поэтому давайте рассмотрим такой пример, используя созданный нами класс Shark. Комментарии в программе описывают каждый этап процесса.
Именованные кортежи, как альтернативы классам в Python.

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

Для понимания:
Именованные кортежи определяют имена для каждой позиции в кортеже и позволяют создавать более читаемый и понятный код. Они могут быть использованы в тех же случаях, что и обычные кортежи, а обращаться к полям можно не только по индексу, но и по имени.
Замер времени выполнения куска кода с помощью модуля «timeit».

Модуль timeit позволяет замерить время выполнения любого куска кода.

Большие куски кода не очень удобно, но вот мелкие довольно хорошо. Закидываете вашу строчку внутрь timeit и вуаля.
Хотите научиться помогать компаниям оптимизировать бизнес-процессы и получать за это хорошие деньги? Лучший способ приобрести необходимые навыки меньше, чем за год — пройти курс «Бизнес-аналитик»!

«Бизнес-аналитик» — это курс профессиональной переподготовки с государственной аккредитацией от крупнейшего в России и СНГ финансового онлайн-университета SF Education.

После прохождения курса вы сможете:
Решать реальные задачи бизнес-анализа с помощью четырех разных языков программирования
Моделировать, анализировать и оптимизировать бизнес-процессы
Формировать бюджет компании и работать с финансовой отчетностью
Анализировать финансовые и продуктовые метрики и находить точки роста компании

Среди преподавателей курса — бывший вице-президент банков Goldman Sachs и Wells Fargo и другие крупные руководители из ведущих мировых компаний со стажем более 8 лет.

Мы возвращаем 15% от стоимости курса для 20 лучших студентов.
А ещё по промокоду PYTHON скидка 40% на все программы и курсы SF Education (только до 15 октября)!

Записывайтесь на обучение.
Сделайте самую ценную инвестицию в свое будущее!
Как эффективно по отношению к памяти сравнить два неупорядоченных списка

Давайте предположим, что у вас есть два списка, которые содержат одинаковые элементы. Однако эти элементы стоят в разном порядке.

Два списка содержат одни и те же элементы, а вот их порядок отличается. Давайте посмотрим, как мы можем удостовериться, что перед нами два одинаковых списка.

• Мы можем использовать метод collections.Counter
• Можно использовать sorted(), если объекты поддаются порядку.
Учитесь кодить? (программировать?)

А вы знаете, что зарплата специалиста Data Scientist начинается от 100 000 рублей?
А крупные компании готовы предложить работу даже новичкам? (по данным сайта HeadHunter).

Многие думают, что для работы в Data Science нужно закончить технический вуз и пройти через все круги матана. Конечно, лишним не будет, но опыт говорит, что заниматься работой с данными можно и без такого бэкграунда.
Мы создали курс «Профессия Data Scientist PRO» как раз затем, чтобы с нуля обучать людей науке о данных.
Для кого этот курс:

-Для новичков
С нуля освоите Python, SQL, научитесь собирать и анализировать данные, получите необходимый теоретический минимум по математике, теории вероятности и статистике. Устроитесь на стажировку по выбранной специальности уже во время обучения.

-Для программистов
Подтянете математику, статистику, аналитическое и алгоритмическое мышление, научитесь выявлять потребности бизнеса.


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

Переходите по ссылке:https://clc.to/ekYqbA, чтобы начать карьеру в одной из самых востребованных IT-профессий
Метод get() у словарей и его «дефолтный» результат.

Немножко теории: метод get() возвращает значение для искомого ключа. Если ключ недоступен, возвращает значение по умолчанию.

Метод get() возвращает значение по ключу если такой ключ присутсвует в списке, если его нет, то метод возвращает дефолтное значение.

Если же мы напишем nameforuserid.get(5454) без указания «дефолтного» значения, то функция вернет None. Довольно удобно и практично.