Загрузка...

Вложенные данные

У каждого имени своё значение, и это значение — список. У lida в списке сначала tea, потом rice. У guest только water. order считает имена. Еда внутри списка не становится лишним именем.

Первые скобки выбирают имя. order["lida"] — это весь список, tea затем rice, а не одно слово tea. Вторые скобки выбирают место в том списке, до которого вы дошли. Место 0 — это tea. Место 1 — это rice. Сначала имя, потом место.

tea, затем rice, затем два имени

python
order = {"lida": ["tea", "rice"], "guest": ["water"]}

print(order["lida"][0])
print(order["lida"][1])
print(len(order))

На экране tea, затем rice, затем 2. Первые две строки — два места под lida. Число 2 — это сколько имён, а не сколько еды. tea и rice делят одно имя.

Список guest всё ещё на месте, и в нём water. Из guest ничего не написали, потому что программа ни разу не прочитала order["guest"]. Чтение lida не тронуло guest.

order["guest"][0] был бы water. order["guest"][1] останавливает программу. В том списке одно место, и его номер 0. Места 1 нет. Это чтение не возвращается как None. Программа останавливается.

order["soup"][0] останавливается уже на первых скобках. soup не имя, поэтому списка, в который можно войти, нет. Вторые скобки не выполняются.

order["lida"][0] = "soup" поставило бы soup на место tea. rice остался бы на месте 1. guest остался бы water. len(order) остался бы 2. Изменилась одна еда. Набор имён не изменился.

Следующая страница вынимает несколько значений в собственные имена. Эта страница только переходит от имени к списку, который лежит под ним.

Что хранит order

  1. Что пишет программа?
  2. Что такое order["lida"] до вторых скобок?
  3. Чем был бы order["guest"][0]?
  4. Что будет, если написать order["guest"][1]?
  5. Что будет, если написать order["soup"][0]?

Две еды, одно имя

Экран — tea, затем rice, затем 2. Число 2 считает имена. guest по-прежнему хранит water, и его не написали. Места, которого нет, останавливает программу. Отсутствующее имя останавливается на первых скобках. Следующая страница вынимает значения в собственные имена.

🧠 Проверьте Свои Знания

Готов к Началу

Проверьте Свои Знания

Бросьте себе вызов с помощью этой интерактивной викторины и узнайте, насколько хорошо вы понимаете тему

❓
6
Вопросы
🎯
70%
Для Прохождения
♾️
∞
Время
🔄
∞
Попытки

📝 Инструкции

  • Внимательно прочитайте каждый вопрос
  • Выберите лучший ответ на каждый вопрос
  • Вы можете пересдавать тест столько раз, сколько захотите
  • Ваш прогресс будет показан вверху