Menu
Coddy logo textTech

Итерация по картам

Часть раздела Основы путешествия по GO на Coddy — урок 92 из 109.

Ключевое слово range позволяет перебирать все пары ключ-значение в карте. Оно возвращает как ключ, так и значение для каждой записи.

Создайте карту запасов фруктов:

inventory := map[string]int{
    "apples": 5,
    "bananas": 8,
    "oranges": 12,
}

for fruit, quantity := range inventory {
    fmt.Printf("%s: %d\n", fruit, quantity)
}

Результат показывает каждую пару ключ-значение:

apples: 5
bananas: 8
oranges: 12

Если вам нужны только ключи, вы можете опустить вторую переменную:

for fruit := range inventory {
    fmt.Println(fruit)
}
challenge icon

Задание

Новичок

В этом испытании вы попрактикуетесь в итерации по карте (map) с использованием ключевого слова range в Go. Для вас была создана карта оценок студентов. Ваша задача — перебрать карту и вывести имя каждого студента и его оценку.

Дополните код, чтобы перебрать карту studentGrades и вывести имя и оценку каждого студента в формате: Student: [name], Grade: [grade]

Шпаргалка

Используйте range для итерации по парам ключ-значение в карте (map):

inventory := map[string]int{
    "apples": 5,
    "bananas": 8,
    "oranges": 12,
}

for fruit, quantity := range inventory {
    fmt.Printf("%s: %d\n", fruit, quantity)
}

Чтобы итерировать только по ключам, опустите вторую переменную:

for fruit := range inventory {
    fmt.Println(fruit)
}

Попробуйте сами

package main

import (
	"fmt"
	"sort"
)

func main() {
	// Карта оценок студентов
	studentGrades := map[string]string{
		"Alice":  "A",
		"Bob":    "B",
		"Charlie": "B+",
		"David":  "A-",
		"Eva":    "C",
	}

	// Собираем имена студентов (ключи) в срез, чтобы отсортировать их
	var names []string
	for name := range studentGrades {
		names = append(names, name)
	}
	sort.Strings(names)


	// TODO: Пройтись по отсортированному списку имен студентов
	// и вывести имя и оценку каждого студента в формате:
	// "Student: [name], Grade: [grade]"
}
quiz iconПроверьте себя

В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.

Все уроки раздела Основы