February 18

Интенсив по программированию на PYTHON с помощью chatGPT

Введение в Python-разработку с помощью ChatGPT

Результат дня

Познакомимся с Python и ChatGPT, установим программу для написания кода, решим простые задачи с собеседований в Яндекс и создадим своего первого Telegram-бота

▶️ Время чтения и просмотра: ~ 1 - 1,5 часа

Теория на сегодня

1. Знакомство с экспертом.

Что ждет на интенсиве

Наш эксперт - Стефанцова Нина

  • Преподаватель по веб-разработке и программированию на Python.
  • Эксперт ведущих российских IT-компаний (GeekBrains (VK Group), Rubius).
  • Фаундер студии ToxicTec
  • Автор профессионального блога и тематических колонок для профильных медиа в сфере образования и IT (RussiaToday, Хайтек ФМ и др).

Что ждет на интенсиве?

  1. Решим задачи с собеседований в Яндекс
  2. Разработаем самого просто Telegram-бота
  3. Разработаем более сложного Telegram-бота и внедрим в него искусственный интеллект
  4. Модифицируем Telegram-бота: добавим возможность отвечать голосовыми сообщениями

2. Особенности и преимущества разработки на Python с помощью ChatGPT

Почему Нина выбрала Python?

  1. Простота в изучении и использовании: Python имеет простой и понятный синтаксис, который делает его идеальным выбором для начинающих программистов. Это уменьшает время на изучение языка и позволяет быстро приступить к разработке.
  2. Множество библиотек и фреймворков: Python обладает огромной экосистемой библиотек и фреймворков, которые предоставляют разнообразные инструменты для разработки, начиная от веб-разработки и машинного обучения, и заканчивая научными вычислениями и анализом данных.
  3. Кроссплатформенность: Python поддерживает все основные операционные системы (Windows, macOS, Linux), что позволяет разрабатывать приложения, работающие на различных платформах.
  4. Широкое применение: Python используется в различных областях, таких как веб-разработка, научные исследования, разработка игр, машинное обучение и искусственный интеллект, автоматизация задач, разработка приложений для администрирования и многое другое.

Преимущества использования ChatGPT в разработке на Python

  1. Простота интеграции: ChatGPT предоставляется в виде API, что делает его легко интегрируемым в проекты на Python. С помощью простых HTTP-запросов можно отправлять текстовые запросы к модели и получать ответы.
  2. Нейронная сеть с улучшенной архитектурой: ChatGPT использует передовую архитектуру нейронной сети, которая обучается на огромных объемах текста, что позволяет ему лучше понимать контекст и писать более качественный код
  3. Скорость: Использование ChatGPT в разработке на Python предоставляет разработчикам мощный инструмент для создания приложений, которые могут генерировать естественно звучащие тексты и взаимодействовать с пользователями на естественном языке за считанные минуты

3. Установка ПО на Windows и macOS

Чтобы установить необходимое ПО для работы, давайте попросим нашего Нейрокота помочь нам:

  1. Пишем запрос “я хочу научиться программировать на Python помоги мне с установкой всех нужных программ для этого”.
  2. Нейрокот предлагает нам установить Python и PyCharm. Давайте устанавливать!

Установка Интерпретатора Python и IDE Pycharm Community на macOS

Интерпретатор Python

IDE PyCharm

Установка Интерпретатора Python и IDE Pycharm Community на Windows

Интерпретатор Python

IDE PyCharm

Если в процессе установки возникает какая-либо ошибка, рекомендуем обратиться к Нейрокоту для получения помощи в ее решении.

4. Решение задач с собеседований

Прежде чем мы приступим к практическим заданиям, давай подробнее познакомимся со средой разработки PyCharm.

PyCharm - это мощный интегрированный инструмент для разработки на языке Python, который облегчает процесс написания, отладки и тестирования кода.

Ключевые возможности PyCharm:

  • Удобный интерфейс: Интуитивно понятный интерфейс помогает сосредоточиться на коде, минимизируя отвлекающие элементы.
  • Расширенные функции редактора: Включая подсветку синтаксиса, автодополнение кода, быстрые фиксы ошибок и многое другое.
  • Отладка и тестирование: Встроенные инструменты для отладки кода и запуска тестов обеспечивают эффективную разработку.

Как создать пространство для работы?

1. Кликаем на пустое пространство правой кнопкой мыши:

2. Нажимаем на “NEW”, затем на “Python File".

3. Напиши название твоего рабочего пространства.

4. Готово! Можно работать.

Теперь решим простые задачи и задачи с собеседования в Яндекс.

Задача 1. Подсчет факториала заданного числа. Решение:

1. Копируем условие задачи и переходим в Нейрокота.

Подключить Нейрокота

2. Пишем запрос “Напиши код на языке программирования Python, который будет находить факториал заданного числа” и отправляем запрос.

❗Написание кода может занять какое-то время.

3. Полученный код копируем:

4. И вставляем в PyCharm:

5. Кликаем правой кнопкой мыши по коду и нажимаем “Run”:

6. Ура! Код работает!

Отлично мы решили первую задачу, приступим ко второй.

Задача 2. Подсчет простых чисел. Решение:

  1. Копируем условие задачи и переходим в Нейрокота
  2. Пишем запрос “Напиши программу на языке программирования Python, которая будет выводить первые 20 простых чисел”
  3. Копируем полученный код, вставляем в PyCharm и тестируем.
  4. Ура! Снова все получилось.

Теперь решим задачи немного сложнее предыдущих. Попробуй решить их самостоятельно с помощью Нейрокота.

Задача 3. Есть список a = [1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89]. Выведите все элементы, которые меньше 5.

Задача 4.

Даны списки:

a = [1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89];

b = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13].

Нужно вернуть список, который состоит из элементов, общих для этих двух списков.

Переходим к сложным задачам - задачам с собеседования в Яндекс.

  • Задача 1. Есть массив со словами, в котором есть хотя бы одно слово. Надо найти максимально длинное общее начало каждого слова. Если такого нет — вывести пустую строку. Решение:
  1. Копируем условие задачи и переходим в Нейрокота
  2. Пишем запрос “Напиши программу для решения данной задачи на языке программирования Python: Есть массив со словами, в котором есть хотя бы одно слово. Надо найти максимально длинное общее начало каждого слова. Если такого нет — вывести пустую строку
  3. Копируем полученный код, вставляем в PyCharm и тестируем

❗При возникновении ошибки при запуске кода, скопируй сообщение об ошибке и обратись к Нейрокоту, чтобы запросить его помощь в ее решении.

Ура, мы смогли решить одну из задач от Яндекса за очень короткое время! Теперь повторяя за экспертом реши вторую задачу.

Задача 2.

Дан массив a из n целых чисел. Напишите программу, которая найдет число, которое чаще других встречается в массиве. Ограничение времени: 2 с, ограничение памяти: 256 МБ.

Формат ввода

В первой строке входных данных записано число n (1 ≤ n ≤ 300 000).

Во второй строке записаны n целых чисел ai (0 ≤ ai ≤ 1 000 000 000).

Формат вывода

Выведите единственное число x, наибольшее из чисел, которое чаще других встречается в массиве a

5. Разработка Telegram-бота

Теперь ты создашь своего первого Telegram-бота. В целом, ничего сложного, мы проделаем такие же шаги, как и при решении задач от Яндекса. Но….

Для создания Telegram-бота, помимо запроса в нейросеть, тебе нужно будет создать свой токен.

❗Токен - уникальная строка символов, выдаваемая при создании бота через BotFather, которая используется для идентификации и аутентификации бота при взаимодействии с API Telegram.

Как получить токен?

  1. Заходим в https://t.me/BotFather и пишем /newbot.
  2. Выбираем название для Telegram-бота.
  3. Копируем токен.

4. Переходим в PyCharm и вставляем вместо “your bot token” свой токен.

Промт для создания Telegram-бота “напиши код для создания Telegram-бота на языке программирования Python с использованием библиотеки telebot, который сможет отвечать на простые вопросы *здесь пропишите любые вопросы*”

Поздравляем! Ты разработал(-а) своего первого Telegram-бота.

6. Итоги урока

Итак, за этот урок мы:

Узнали как можно легко и быстро программировать на Python с помощью ChatGPT, решили задачи с собеседований в Яндекс и разработали Telegram-бота. На следующем уроке мы будем разрабатывать более сложного бота и добавлять в нее искусственный интеллект.

Дополнительные материалы

Коды к 1 уроку

ДОМАШНЕЕ ЗАДАНИЕ

Время выполнить задание

За выполнение задания ты получишь 2000 нейрокоинов.

  • Установи необходимые программы для работы на Windows/macOS
  • Реши задачи с помощью нейросети:

1. При заданном целом числе n посчитайте n + nn + nnn.

2. Напишите программу, которая выводит чётные числа из заданного списка и останавливается, если встречает число 237.

3. Найдите наименьшую обыкновенную дробь, равную вещественному числу 14.375, и выведите ее на экран в формате '14.375 = числитель/знаменатель'

4. Сделайте так, чтобы число секунд отображалось в виде дни:часы:минуты:секунды.

5. Напишите программу, которая принимает на вход целое число и определяет, является ли оно четным или нечетным.

6. Создайте простой калькулятор, который позволяет пользователю вводить два числа и выполнять над ними основные арифметические операции (сложение, вычитание, умножение, деление). 7. Напишите программу, которая принимает на вход температуру в градусах Цельсия и переводит ее в градусы Фаренгейта или наоборот, в зависимости от выбора пользователя.

8. Создайте программу, которая генерирует случайное число в определенном диапазоне и выводит его на экран.

  • Разработай своего эхо-бота

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

Загружай, пожалуйста, скриншоты в форматах изображений (png, jpg или pdf). Чтобы быстро сделать и сохранить скриншот в формате изображения, можешь установить специальную программу, например Joxi.

Внимание! Задание к этому уроку принимается автоматически, но если ты не сделаешь его правильно, то не сможешь выполнить задание к последнему уроку, которое будет проверяться куратором.

Если ты хочешь просто ознакомиться с материалами урока, но не хочешь попробовать собрать приложение и получить нейрокоины, которые можно потратить на обучение в университете Zerocoder, поставь галочку Я посмотрел (-а) урок — тебе будет доступен следующий.

На следующем занятии 😉

Разработаем более сложного Telegram-бота и внедрим искусственный интеллект в программу

Сдать домашнее задание