Максим Байтович – КУРС МОЛОДОГО БОЙЦА, ИЛИ КАК Я ПЕРЕСТАЛ ПЛАКАТЬ И ПОЛЮБИЛ ПИТОН (страница 2)
Антон открыл дверь.
— Здравствуйте, Круглов, — сказала Алёна Викторовна. Голос у неё был такой, каким учителя объявляют об отмене перемены: трагичный, но смирившийся. — Соли не будет?
— Соли? — Антон моргнул.
— Соли. В банку. Мне борщ солить, а я, как дура, последнюю соль отдала старшему для эксперимента по физике. Он выращивал кристаллы. Вырастил. На двойку. Соли больше нет. А борщ есть. Понимаете?
— Понимаю, — сказал Антон, хотя ничего не понимал. — Проходите.
Алёна Викторовна зашла, таща за собой Петьку. Тот немедленно уставился на Барсика, а Барсик — на Петьку. В их взглядах было что-то общее. Два существа, которых привели сюда против их воли.
— Ого, — сказала Алёна, оглядывая квартиру. — А у вас… чисто.
Это была откровенная ложь. В квартире был бардак. Но, видимо, по сравнению с тем, что она ожидала увидеть у разведённого мужчины, это действительно было «чисто».
— Я сейчас соль найду, — сказал Антон и пошёл на кухню. — Вы присаживайтесь. То есть… ну, куда-нибудь.
Алёна не присела. Она стояла и смотрела на открытый ноутбук, где на паузе застыл улыбающийся Паша в жёлтом худи.
— А это что у вас? — спросила она.
— Это… я учусь. На программиста.
Тишина. Такая тишина, когда слышно, как кот моргает. Алёна Викторовна медленно повернулась к Антону. На её лице читалась целая гамма эмоций: от недоверия до лёгкого шока, плавно переходящего в профессиональный интерес.
— Вы? — переспросила она. — На программиста?
— Ну да. А что?
— Круглов, — она вздохнула, и в этом вздохе были слышны тридцать два года педагогического стажа, — я вам честно скажу, как учитель математики. Вы когда в прошлом году пытались рассчитать, сколько рулонов обоев надо на коридор, вы ошиблись в три раза. Я думала, вы делаете ремонт, а вы, оказывается, обои скупали, как в кризис скупают гречку.
— Я просто не понял масштаб…
— Масштаб. — Алёна покачала головой. — Ладно. Хотите быть программистом — будьте. Но начните с малого. Учебники за девятый класс. Я вам принесу.
Она взяла банку с солью, которую Антон наконец нашёл, кивнула Петьке («Отлипни от кота, он тебя не уважает») и направилась к выходу.
У двери она обернулась.
— Знаете, Круглов… я, конечно, вас не хвалю. Но хотя бы не на диване. Уже прогресс.
И ушла.
Антон остался стоять в коридоре с чувством, что его только что одновременно похвалили и оскорбили. Он вернулся к ноутбуку. Паша всё ещё улыбался на паузе. Барсик смотрел на него с подоконника.
— Ну что, Барсик? — сказал Антон, садясь обратно. — Говорят, ты тоже мог бы стать программистом.
Барсик зевнул.
Антон нажал «Play» и взял ручку.
Продолжение следует…
Глава 2. «Типы данных. Строки и характер»
Прошла неделя. Антон честно пытался учиться. Он посмотрел четыре видео, прочитал две статьи и даже что-то конспектировал в тетради. Тетрадь была красивая, в клеточку, купленная специально для курса в канцелярском магазине у метро. На обложке было написано: «Python. Мой путь в IT». Ниже Антон приписал карандашом: «Надеюсь, не обратный».
Сегодня была важная тема: типы данных. Паша в своём жёлтом худи объяснял, что в Python есть строки, числа, списки и словари. Антон слушал внимательно, даже делал пометки на полях. «Строка — это текст в кавычках», — записал он. «Числа — это числа. Без кавычек». Он задумался. Потом дописал: «Лена — строка. Без кавычек уже. Вроде как число, но не моё».
Барсик лежал на системном блоке старого компьютера, который Антон не включал года три. Системный блок был тёплый, потому что работал вхолостую — Антон когда-то пробовал его почистить, но что-то замкнуло, и теперь он просто грел воздух. Барсика это устраивало. Кот вообще был философом: если что-то греет и не требует от тебя ответственности — ложись сверху.
— Слушай, Барсик, — сказал Антон, отрываясь от конспекта, — а вот смотри. Строка — это, например, «Барсик». А число — это твой вес. Ты весишь восемь килограммов. Это число. Понимаешь?
Барсик не пошевелился. Он уже давно смирился с тем, что его человеческий сосед периодически издаёт странные звуки в его сторону. Главное, чтобы корм давали вовремя.
— А список — это, например, список того, что от меня ушло: жена, уверенность в себе, абонемент в спортзал, который я купил и ни разу не использовал. Три элемента. Можно добавить четвёртый — «стыд перед соседями». Это будет метод append.
Он постучал ручкой по столу. Получалось? Кажется, получалось. Антон впервые за долгое время чувствовал, что его мозг делает что-то, кроме воспроизведения грустных мыслей по кругу.
Он открыл редактор кода. Чёрный экран, белые буквы. Выглядело сурово и профессионально. Антон напечатал свою первую программу — ту самую, которую Паша показывал на видео:
python
name = input("Введите ваше имя: ")
print("Привет, " + name + "! Добро пожаловать в мир Python!")
Он запустил код. Консоль спросила: «Введите ваше имя:». Антон ввёл: «Антон». Программа ответила: «Привет, Антон! Добро пожаловать в мир Python!».
Сердце ёкнуло. Она с ним поздоровалась. Машина, набор символов, чёрный экран — а поздоровалась. По имени. Антон улыбнулся. Это была его первая работающая программа. Она не взорвала компьютер, не вызвала синий экран смерти и не потребовала денег. Просто поздоровалась.
— Барсик, видал? Я программист!
Барсик открыл один глаз, оценил обстановку и закрыл. Программист-программистом, а корм по расписанию.
Антон решил пойти дальше. Он вспомнил, что Паша говорил про условные конструкции. «Если — то — иначе». Логика. Принимаем решение на основе данных. Он задумался. Какое решение он мог бы автоматизировать?
Через пять минут он писал программу «Калькулятор развода».
Идея была простая. Пользователь вводит причину, по которой от него ушла жена. Программа анализирует текст и выдаёт вердикт. Антон честно пытался использовать изученные методы: он разбивал строку на слова, считал их количество, искал ключевые термины. Если находилось слово «диван» — вердикт был суров.
Первая версия выглядела так:
python
reason = input("Введите причину развода: ")
if "диван" in reason:
print("Вы — диван.")
else:
print("Причина не распознана. Попробуйте ещё раз.")
Он запустил программу и ввёл: «Я слишком много лежал на диване».
Программа ответила: «Вы — диван».
Антон уставился в экран. Это было смешно. И больно. И честно. Он ввёл: «Она меня не понимала». Программа ответила: «Причина не распознана. Попробуйте ещё раз». Он ввёл: «Я не мыл посуду». Снова: «Причина не распознана». Он ввёл: «Диван был моим лучшим другом».
Программа ответила: «Вы — диван. И у вас нет друзей».
Антон рассмеялся в голос. Он сам дописал вторую часть. И забыл стереть. Барсик поднял голову — человеческий самец издал странный звук, похожий на радость. Такого не случалось уже несколько месяцев.
В дверь постучали. Как обычно, без предупреждения. Антон вздохнул и пошёл открывать.
На пороге стояла Алёна Викторовна. В руках у неё была стопка учебников, перевязанная бельевой резинкой. Выглядела она так, будто только что провела шесть уроков подряд в девятом «Б», который, по слухам, довёл до нервного тика даже трудовика.
— Держите, Круглов, — сказала она, вручая ему стопку. — Информатика за девятый, десятый и одиннадцатый классы. Тут основы алгоритмов, Паскаль, немного C++. Честно говоря, не знаю, что там сейчас актуально, но база везде одна. Если поймёте, что такое цикл, — уже победа.
— Спасибо, Алёна Викторовна, — Антон принял книги. Они пахли старой бумагой и мелом. — А вы чего такая... уставшая?
— Девятый «Б», — сказала она таким тоном, каким говорят «холера» или «налоговая проверка». — У нас была контрольная по квадратным уравнениям. Знаете, сколько человек её написали на положительную оценку? Четыре. Из тридцати. Четыре, Круглов. Остальные решили, что дискриминант — это что-то из области фантастики, а икс равен примерно «ну, где-то между двойкой и тройкой, я не знаю».
— Сочувствую.
— Не надо сочувствовать. Надо учить. А то вырастают потом... — она осеклась и посмотрела на Антона. — Ну, неважно. Как ваш Питон? Не укусил?