Учиться самостоятельно программированию очень тяжело. Уходит много времени, сил и не всегда понятно, какая информация действительно актуальна и полезна
Лайфхак: в онлайн-университете Skypro обучают Python с нуля и на пальцах — так, что даже далекий от кода человек все поймет. Сейчас ребята набирают новый поток на десятимесячный курс «Разработчик на Python». Это востребованный язык, который отлично подходит для новичков. За десять месяцев из вас сделают уверенного junior-разработчика и помогут устроиться на работу с зарплатой от 80.000р. После обучения вы сможете создавать сайты, игры, мобильные и десктопные приложения. Покажете работодателю портфолио и официальный диплом как в вузе.
+ Все обучение — в онлайне. Да еще и приложение свое сделали, можно учиться в любой точке мира, в любое время, даже с телефона
+ Индивидуальная проверка домашки и глубокая, развивающая обратная связь
+ Практика на реальных задачах разработчиков
+ Четыре проекта в портфолио, диплом о профессиональной переподготовке и помощь с трудоустройством
Если курс вам не зайдет первые две недели — вам вернут деньги.
Запись на курс и бесплатную консультацию с менеджером: https://go.skyeng.ru/python_school_skypro
И еще наш промокод УЧИСЬ на дополнительную скидку 10% на этот курс
Лайфхак: в онлайн-университете Skypro обучают Python с нуля и на пальцах — так, что даже далекий от кода человек все поймет. Сейчас ребята набирают новый поток на десятимесячный курс «Разработчик на Python». Это востребованный язык, который отлично подходит для новичков. За десять месяцев из вас сделают уверенного junior-разработчика и помогут устроиться на работу с зарплатой от 80.000р. После обучения вы сможете создавать сайты, игры, мобильные и десктопные приложения. Покажете работодателю портфолио и официальный диплом как в вузе.
+ Все обучение — в онлайне. Да еще и приложение свое сделали, можно учиться в любой точке мира, в любое время, даже с телефона
+ Индивидуальная проверка домашки и глубокая, развивающая обратная связь
+ Практика на реальных задачах разработчиков
+ Четыре проекта в портфолио, диплом о профессиональной переподготовке и помощь с трудоустройством
Если курс вам не зайдет первые две недели — вам вернут деньги.
Запись на курс и бесплатную консультацию с менеджером: https://go.skyeng.ru/python_school_skypro
И еще наш промокод УЧИСЬ на дополнительную скидку 10% на этот курс
Показатели производительности
Мы можем быстро убедиться, что функция действительно возвращает плоский словарь, но как насчет производительности? Будет ли хорошей идеей использовать этот подход в продакшен-среде? Давайте запустим быстрый замер показателей скорости.
Здесь и во всех дальнейших замерах производительности мы будем пользоваться магической функцией IPython — timeit, а также memit из библиотеки memory_profiler.
P.S. Чтобы функция %memit заработала, сперва нужно запустить %load_ext memory_profiler.
Мы можем быстро убедиться, что функция действительно возвращает плоский словарь, но как насчет производительности? Будет ли хорошей идеей использовать этот подход в продакшен-среде? Давайте запустим быстрый замер показателей скорости.
Здесь и во всех дальнейших замерах производительности мы будем пользоваться магической функцией IPython — timeit, а также memit из библиотеки memory_profiler.
P.S. Чтобы функция %memit заработала, сперва нужно запустить %load_ext memory_profiler.
Если вы хотите узнать, что реально происходит на работе в Тинькофф — посмотрите их смешной сериал.
Пока что вышла только одна серия, но дальше — больше. Плюс, каждая серия показывает одну специальность, которая действительности есть внутри компании Тинькофф. И айтишники тоже будут.
Сюжет сериала интересный: внутри компании Тинькофф хотят снять фильм о сотрудниках и пригласили для этого актёров. Актёры знакомятся с сотрудниками, чтобы вжиться в роль. Они общаются, шутят и проживают рабочую жизнь вместе с сотрудниками.
Уже ждем продолжение. Ну а для тех, кто хочет поработать в Тинькофф есть актуальные вакансии: https://bit.ly/37wunHH
Пока что вышла только одна серия, но дальше — больше. Плюс, каждая серия показывает одну специальность, которая действительности есть внутри компании Тинькофф. И айтишники тоже будут.
Сюжет сериала интересный: внутри компании Тинькофф хотят снять фильм о сотрудниках и пригласили для этого актёров. Актёры знакомятся с сотрудниками, чтобы вжиться в роль. Они общаются, шутят и проживают рабочую жизнь вместе с сотрудниками.
Уже ждем продолжение. Ну а для тех, кто хочет поработать в Тинькофф есть актуальные вакансии: https://bit.ly/37wunHH
Делаем многоуровневый словарь плоским при помощи собственной рекурсивной функции
Быстрый поиск в Google приводит нас на StackOverflow. Первый же ответ предлагает рекурсивную функцию, которая перебирает словарь и возвращает «уплощенный» экземпляр. Вдохновившись этой функцией, давайте создадим немного более продвинутую версию.
Можем начать с type hinting (явного указания типов). Это улучшит читаемость и сделает код типобезопасным.
Быстрый поиск в Google приводит нас на StackOverflow. Первый же ответ предлагает рекурсивную функцию, которая перебирает словарь и возвращает «уплощенный» экземпляр. Вдохновившись этой функцией, давайте создадим немного более продвинутую версию.
Можем начать с type hinting (явного указания типов). Это улучшит читаемость и сделает код типобезопасным.
Давно задумываетесь об интересной карьере в сфере IT? Хотите узнать, как с помощью data-аналитики повышать эффективность бизнеса? Познакомьтесь с основами обработки и анализа данных на онлайн-занятиях Skillbox: 👉 https://clc.am/4Z6xlQ.
📢 Встречаемся в прямом эфире 16 августа в 21:00 по московскому времени!
Чему вы научитесь?
💫 Применять язык программирования Python для data-аналитики.
💫 Восстанавливать недостающие данные.
💫 Находить аномалии в данных.
💫 Использовать актуальные библиотеки.
💫 Решать реальные задачи, с которыми сталкивается Data Scientist.
🏆 Все участники, дошедшие до финала интенсива, получат в подарок электронную книгу Кей Петерсон и Дэвида Колба «Век живи — век учись» от издательства МИФ. А те, кто сдаст домашнее задание, — сертификаты на 15 000 рублей для поступления на любой курс Skillbox.
📢 Встречаемся в прямом эфире 16 августа в 21:00 по московскому времени!
Чему вы научитесь?
💫 Применять язык программирования Python для data-аналитики.
💫 Восстанавливать недостающие данные.
💫 Находить аномалии в данных.
💫 Использовать актуальные библиотеки.
💫 Решать реальные задачи, с которыми сталкивается Data Scientist.
🏆 Все участники, дошедшие до финала интенсива, получат в подарок электронную книгу Кей Петерсон и Дэвида Колба «Век живи — век учись» от издательства МИФ. А те, кто сдаст домашнее задание, — сертификаты на 15 000 рублей для поступления на любой курс Skillbox.
Метод items()
Метод items() используется для возврата списка кортежей с парами всех ключей и значений словаря.
Синтаксис:dictionary.items()
Данный метод не принимает никаких аргументов.
Приведем пример использования данной функции.
Объявлен словарь с именем products. Ключи содержат названия продуктов, а значения — их цены. Используем для нашего словаря метод items() и сохраним в другой переменной с именем itemlist, а затем выведем на экран.
Метод items() используется для возврата списка кортежей с парами всех ключей и значений словаря.
Синтаксис:dictionary.items()
Данный метод не принимает никаких аргументов.
Приведем пример использования данной функции.
Объявлен словарь с именем products. Ключи содержат названия продуктов, а значения — их цены. Используем для нашего словаря метод items() и сохраним в другой переменной с именем itemlist, а затем выведем на экран.
Как быстро выучить Python
В прошлом посте мы рассказали про полезные ресурсы и сервисы, с помощью которых можно выучить Python.
Но кто-то учит Python 3 года, а кто-то справляется за пару месяцев. А всё потому что Python надо учить правильно.
Поэтому собрали для вас подборку материалов, в которых авторы делятся своим опытом, секретами, фишками и лайфхаками для быстрого изучения Python. Дерзайте.
1. Как выучить Python. Самый простой способ. [Cмотреть]
2. План изучения Python с нуля. [Смотреть]
3. Как быстро выучить Python. [Смотреть]
4. 5 лучших советов, которые помогут правильно выучить Python. [Смотреть]
5. Как за месяц выучить Python. [Смотреть]
6. Учим Python за 1 час. [Смотреть]
В прошлом посте мы рассказали про полезные ресурсы и сервисы, с помощью которых можно выучить Python.
Но кто-то учит Python 3 года, а кто-то справляется за пару месяцев. А всё потому что Python надо учить правильно.
Поэтому собрали для вас подборку материалов, в которых авторы делятся своим опытом, секретами, фишками и лайфхаками для быстрого изучения Python. Дерзайте.
1. Как выучить Python. Самый простой способ. [Cмотреть]
2. План изучения Python с нуля. [Смотреть]
3. Как быстро выучить Python. [Смотреть]
4. 5 лучших советов, которые помогут правильно выучить Python. [Смотреть]
5. Как за месяц выучить Python. [Смотреть]
6. Учим Python за 1 час. [Смотреть]
Распаковываем многоуровневый словарь, используя библиотеку flatdict (ч.1)
flatdict — это библиотека Python, создающая из вложенного словаря одноуровневый. Она доступна в Python 3.5 и выше.
Пока мы увидели, что написание собственных решений — не идеальный вариант, но и использование полнофункциональной библиотеки вроде pandas лишь для распаковки словаря — тоже не предел мечтаний.
flatdict — это библиотека Python, создающая из вложенного словаря одноуровневый. Она доступна в Python 3.5 и выше.
Пока мы увидели, что написание собственных решений — не идеальный вариант, но и использование полнофункциональной библиотеки вроде pandas лишь для распаковки словаря — тоже не предел мечтаний.
Дата саентисты, работающие с нейросетями, часто сталкиваются с недостатком данных для обучения. Классический выход из положения — провести transfer learning при помощи finetuning — обладает досадным свойством катастрофического забывания.
На demo-занятии OTUS 24 августа вы разберете метод перемежающейся тренировки, позволяющий избежать переобучения на маленьком датасете.
Вебинар проведет Дмитрий Хизбуллин, тимлид в исследовательском центре Huawei. Это возможность познакомиться с преподавателем и материалам онлайн-курса «Deep Learning. Basic».
Для регистрации пройдите вступительный тест: https://otus.pw/YJNN/
На demo-занятии OTUS 24 августа вы разберете метод перемежающейся тренировки, позволяющий избежать переобучения на маленьком датасете.
Вебинар проведет Дмитрий Хизбуллин, тимлид в исследовательском центре Huawei. Это возможность познакомиться с преподавателем и материалам онлайн-курса «Deep Learning. Basic».
Для регистрации пройдите вступительный тест: https://otus.pw/YJNN/
Что такое метаклассы — короткий обзор
Предположим, что вы знаете разницу между классами и объектами. Тогда метаклассы не должны быть для вас слишком уж сложными. Если кратко, то они являются классами для классов (отсюда и «мета» в их названии).
Проще говоря, в то время как классы являются чертежами для объектов, метаклассы являются чертежами для классов. Класс является описанием, когда мы создаем его экземпляр, тогда как метакласс является описанием класса, и существует только когда определен класс.
Самая простая реализация метакласса, которая ничего не делает, выглядит следующим образом
Предположим, что вы знаете разницу между классами и объектами. Тогда метаклассы не должны быть для вас слишком уж сложными. Если кратко, то они являются классами для классов (отсюда и «мета» в их названии).
Проще говоря, в то время как классы являются чертежами для объектов, метаклассы являются чертежами для классов. Класс является описанием, когда мы создаем его экземпляр, тогда как метакласс является описанием класса, и существует только когда определен класс.
Самая простая реализация метакласса, которая ничего не делает, выглядит следующим образом
Нелокальная переменная во вложенной функции
Прежде чем перейти к тому, что такое замыкание, мы должны сначала понять, что такое вложенная функция и нелокальная (nonlocal) переменная.
Функция, определенная внутри другой функции, называется вложенной функцией. Вложенные функции могут получать доступ к переменным из локальной области видимости объемлющих функций (enclosing scope).
В Python нелокальные переменные по умолчанию доступны только для чтения. Если нам необходимо их модифицировать, то мы должны объявить их явно как нелокальные (используя ключевое слово nonlocal).
Прежде чем перейти к тому, что такое замыкание, мы должны сначала понять, что такое вложенная функция и нелокальная (nonlocal) переменная.
Функция, определенная внутри другой функции, называется вложенной функцией. Вложенные функции могут получать доступ к переменным из локальной области видимости объемлющих функций (enclosing scope).
В Python нелокальные переменные по умолчанию доступны только для чтения. Если нам необходимо их модифицировать, то мы должны объявить их явно как нелокальные (используя ключевое слово nonlocal).
Словари (dict)
Словари — часто используемый тип данных в Python. Давайте посмотрим на их изменчивость.
Определим словарь под именем dict с тремя ключами и их значениями. Когда мы распечатаем его, отобразится все его содержимое. Можно распечатать каждое значение словаря отдельно, а также использовать ключи вместо индексов.
Словари — часто используемый тип данных в Python. Давайте посмотрим на их изменчивость.
Определим словарь под именем dict с тремя ключами и их значениями. Когда мы распечатаем его, отобразится все его содержимое. Можно распечатать каждое значение словаря отдельно, а также использовать ключи вместо индексов.
Что такое *args и kwargs? (ч.1)
Иногда нельзя предсказать, сколько аргументов получит функция. Чтобы обработать их, используются специальные конструкции *args и kwargs.
На самом деле названия переменных – args, kwargs – это просто соглашение. Важны здесь только звездочки. Они обозначают сборку аргументов в коллекцию (список или словарь). Одна звездочка предназначена для обычных аргументов, две – для именованных.
Иногда нельзя предсказать, сколько аргументов получит функция. Чтобы обработать их, используются специальные конструкции *args и kwargs.
На самом деле названия переменных – args, kwargs – это просто соглашение. Важны здесь только звездочки. Они обозначают сборку аргументов в коллекцию (список или словарь). Одна звездочка предназначена для обычных аргументов, две – для именованных.
Что такое *args и kwargs? (ч.2)
Можно заменить *args на *vars, а kwargs на options или другое слово. Программа будет работать корректно, но другие разработчики могут вас не понять.
Конструкции *args и kwargs можно использовать как самостоятельно, так и в комбинации с любым количеством обычных аргументов. Например, в коде выше первый параметр farg обрабатывается отдельно, а все остальные собираются в коллекцию.
Можно заменить *args на *vars, а kwargs на options или другое слово. Программа будет работать корректно, но другие разработчики могут вас не понять.
Конструкции *args и kwargs можно использовать как самостоятельно, так и в комбинации с любым количеством обычных аргументов. Например, в коде выше первый параметр farg обрабатывается отдельно, а все остальные собираются в коллекцию.
Развиваетесь в области Data Science? Самое время нырнуть в Deep Learning и через 5 месяцев стать специалистом по нейронным сетям.
Обучение в формате живого общения с экспертами на вебинарах и интенсивная практика.
После него вы создадите свою нейронную сеть и будете готовы претендовать на начальные позиции Deep Learning Engineer.
Начинаем погружение 31 августа. Успейте пройти вступительный тест и занять свое место на борту с бонусной скидкой: https://otus.pw/FVSQ/
Обучение в формате живого общения с экспертами на вебинарах и интенсивная практика.
После него вы создадите свою нейронную сеть и будете готовы претендовать на начальные позиции Deep Learning Engineer.
Начинаем погружение 31 августа. Успейте пройти вступительный тест и занять свое место на борту с бонусной скидкой: https://otus.pw/FVSQ/
Мир регулярных выражений
Иногда непросто очистить текст с помощью определенных символов или фраз. Вместо этого нам необходимо использовать некоторые шаблоны. И здесь нам на помощь приходят регулярные выражения и соответствующий модуль Python.
Мы не будем обсуждать всю мощь регулярных выражений, а сосредоточимся на их применении — например, на разделении и замене данных.
Иногда непросто очистить текст с помощью определенных символов или фраз. Вместо этого нам необходимо использовать некоторые шаблоны. И здесь нам на помощь приходят регулярные выражения и соответствующий модуль Python.
Мы не будем обсуждать всю мощь регулярных выражений, а сосредоточимся на их применении — например, на разделении и замене данных.
Чтобы заработать большие деньги в айти не надо читать унылые it-каналы и бесполезные учебники. Там всё равно советы из 2010 года.
Лучше просто читайте канал Rise. Автор вручную шерстит весь интернет и публикует только актуальные обучения по программированию, It и способам заработка на этом.
1000+ курсов по программированию, как написать свой первый софт за 10 минут и можно ли заработать на программировании без программирования — здесь есть вся необходимая инфа.
Обязательно держать в подписках: Rise
Лучше просто читайте канал Rise. Автор вручную шерстит весь интернет и публикует только актуальные обучения по программированию, It и способам заработка на этом.
1000+ курсов по программированию, как написать свой первый софт за 10 минут и можно ли заработать на программировании без программирования — здесь есть вся необходимая инфа.
Обязательно держать в подписках: Rise
Удаление знаков препинания
Модуль string в Python имеет множество встроенных констант с отдельными наборами символов. string.punctuation — один из них, поэтому мы будем использовать его для очистки строки.
В Python3 string.punctuation — это предварительно инициализированная строка, используемая как строковая константа. В Python string.punctuation даст все наборы знаков препинания.
Модуль string в Python имеет множество встроенных констант с отдельными наборами символов. string.punctuation — один из них, поэтому мы будем использовать его для очистки строки.
В Python3 string.punctuation — это предварительно инициализированная строка, используемая как строковая константа. В Python string.punctuation даст все наборы знаков препинания.
Translate и Replace
Первый случай — заменить или удалить некоторые символы или подстроки из текста. В Python есть встроенные функции в модуле string, которые выполняют эти задачи.
Метод translate() использует таблицу (которая строится при помощи функции maketrans) для удаления или изменения определенных символов
Первый случай — заменить или удалить некоторые символы или подстроки из текста. В Python есть встроенные функции в модуле string, которые выполняют эти задачи.
Метод translate() использует таблицу (которая строится при помощи функции maketrans) для удаления или изменения определенных символов
Функция findall()
Если мы хотим найти все вхождения, в дело вступает функция findall().
Синтаксис: findall(pattern, string, flags=0[optional])
В случае успеха данная функция возвращает список, в котором в виде строк содержатся все искомые вхождения по порядку. Если вхождений нет, то эта функция возвратит пустой список.
Если мы хотим найти все вхождения, в дело вступает функция findall().
Синтаксис: findall(pattern, string, flags=0[optional])
В случае успеха данная функция возвращает список, в котором в виде строк содержатся все искомые вхождения по порядку. Если вхождений нет, то эта функция возвратит пустой список.