Перед началом занятий на нашем Бесплатном Курсе Python для детей и подростков, вам потребуется установить Интерпретатор языка и любой специализированный текстовый редактор, например: visual studio code или встроенный IDLE* (Integrated Development Environment - Встроенная Среда для Разработки):
Подробнее о том, что такое интерпретатор языка, зачем нужны текстовые редакторы и многие другие темы мы раскрываем на наших курсах программирования:
Продолжаем Изучать Способы Взаимодействия с Списками в Python
На прошлом занятии мы поговорили с вами о том как можно сохранять информацию в памяти компьютера с помощью создания переменных, а также поверхностно рассмотрели такой тип данных как - Списки. Мы узнали, что списки могут сохранять разные типы данных под одним указателем (именем переменной) и объединить их под общим смыслом, который выражается через названия переменных.
В игре на текущий момент есть переменная - World, в которую мы записали несколько строк выражающих идею пустых клеток в создаваемом виртуальном мире. А также у нас есть необходимые переменные в которых мы объявили разных участников нашей игры:
- @ - Главный Герой
- $ - Злодей
- # - Сокровище
- _ - Пустое поле
Теперь пришло время объединить все созданные идеи вместе и создать первое виртуальное представление игрового мира!
Использование Индексов в Списках
Обратим свое внимание на основную идею сохранения информации в списках, а именно создание уникальных указателей (индексов) для каждого сохраняемого в нем значения.
На иллюстрации мы отчетливо можем заметить позиционно-числовые значения над каждым из сохраненных значений. Чтобы получить доступ к этим значениям мы можем воспользоваться простой операцией: Список[Индекс] . А если к этой операции добавить оператор присваивания, то мы сможем заменить значение в списке под применяемым индексом. Выполните представленные операции, после всех ранее созданных команд в нашей программе:
Разберем выполненные инструкции подробнее. Обратите внимание, что мы будем перечислять действия и объяснять их слева-направо:
- world - Обращение к переменной, в которой мы сохранили список с элементами нашей игры
- Знак открывающей квадратной скобки [ - Если после созданного указателя (переменной) написать этот знак, то python будет считать это место как начало операции индексирования (получения значения из списка)
- Число 0 - Позиция определяется с помощью целочисленных значений начинающихся с нуля. Этой операцией мы скажем примерно следующее: Получи первое значение из списка world
- Знак закрывающей квадратной скобки ] - Специальный знак указывающий на завершение операции индексирования
- Знак присваивания = - Если после указателя на список и выполненной операции получения значения с помощью индексирования написать знак равно, то мы вызовем операцию перезаписи этого значения в списке
- hero - После знака присваивания (равно) мы должны указать на новый сохраняемый объект, в нашем случае это будет строка '@'
Последним действием в новых добавленных инструкциях мы видим - print(world). Print (распечатать) - это самый простой способ для обеспечения вывода в командную строку значения переданного в круглых скобках. По сути вы можете понимать эту команду как - Распечатай ( Что-то ). Print используется как основной способ отладки программ (поиск багов), а также для создания Командно-Строчного Интерфейса (CLI или Command Line Interface) в программах. Такие программы используют текстовый формат вывода вместо графических элементов, вроде кнопок или картинок к которым вы скорее всего больше привыкли. Заранее скажем о том, что в дальнейшем мы будем использовать более продвинутый способ вывода в интерактивную консоль.
В результате если мы сейчас запустим нашу программу, то увидим следующее:
Давайте разберемся подробнее как у нас получилось это сделать.
Обратите внимание на позиционные указатели для "пустых полей" в нашем мире: 0, 1, 2 и т.д. Определяя нужную нам позицию, согласно её числовому значению, мы с помощью операции индексирования и присваивания изменяем сохраненные значения "пустых клеток" на необходимые в дальнейшем указатели: Главного героя, Злодея и Сокровище. Списки благодаря своему свойству - Изменяемости, созданы как раз для таких манипуляций в программах.
Пользовательский Ввод в Python
Перед изучением получения пользовательского ввода в программе, давайте изменим текущий вывод списка -> на строку. Для этого выполните следующие действия:
У строки есть специальный метод* .join (*Метод - это действие с объектом). Он позволяет соединить указанные значения переданные в круглых скобках, через знак разделитель указанный в Кавычках. В нашем примере мы Соединим знаки в списке через Пробелы.
Теперь переходим к определению пользовательского ввода. Добавьте представленные ниже операции в текущую программу:
Напоминаем, что все инструкции мы добавляем ниже и правее ранее созданных, если не сказано иначе. Итоговый вид программы текущего урока вы сможете найти в конце статьи.
Пользовательский ввод - это способ общения пользователя с создаваемой программой. Обычно он напрямую зависит от выбора средства вывода. В нашем случае мы используем Командно Строчный Интерфейс (CLI) и поэтому ввод мы определим в нем же. Для этого в python существует встроенная функция - input (ввод). Данная функция вызовет "ожидающее" действие пользователя в командной строке и после нажатия клавиши Enter (ввод), сохранит все введенные символы в качестве строчного типа данных и вернет их в место вызова этой функции. Т.е. когда мы исполним эту операцию input(...) в интерактивной консоли появится текст указанный в круглых скобках этой функции и python будет ждать нажатия на клавишу Enter. После этого все введенные символы (даже если вы ничего не ввели) мы сохраним в переменную user_input для дальнейшего использования.Что нужно знать о функции input в python:
- Все введенные символы сохранятся в виде типа данных Строка. Тем самым если нам необходимо получить Число от пользователя, потребуются дополнительные преобразования с помощью встроенных функций: int, float и тд.
- Python использует стандартное средство ввода/вывода через интерактивную консоль или Командно Строчный Интерфейс
Запускаем проект и проверяем результат:
Сейчас мы никак не используем определенный ввод и этим мы займемся на следующих уроках.
Заключение
Сегодня мы научились использовать Списки (в будущем эти знания пригодятся для любых делимых типов данных: кортежи, множества, словари и тд.), а также изучили способ определения пользовательского ввода и вывода. Давайте проверим текущий вид нашей программы и перейдем к домашнему заданию.
В качестве домашнего задания вам необходимо изучить подробнее с помощью официальной документации: Списки, Кортежи, Ввод и Вывод. А на следующем занятии нас будут ждать условные операторы и ветвления, которые позволят добавить интерактивности в наш проект.
Ждем вас с нетерпением на следующем нашем уроке, а чтобы не пропустить важные события нашего центра подписывайтесь на нас в социальных сетях: