Сортировка
sorted(words) собирает новый список и оставляет words как есть. В words сначала soup, потом bread, потом rice. Новый список идёт по первой букве: b в bread, затем r в rice, затем s в soup. Новый список — это bread, затем rice, затем soup.
Имя ordered — этот новый список. words по-прежнему soup, затем bread, затем rice. Длина обоих списков 3. Ничего не добавилось и ничего не пропало. Другой только порядок в новом списке.
words = ["soup", "bread", "rice"]
ordered = sorted(words)
print(words)
print(ordered)
Первая строка — soup, затем bread, затем rice. Вторая — bread, затем rice, затем soup. soup по-прежнему первый в words. bread первый только в ordered.
words.sort() переставляет список, который у вас уже есть. Второго списка нет. После этого сам words — это bread, затем rice, затем soup. Результат этого шага — не список. Если написать result = words.sort(), result станет None, а упорядоченные значения останутся в words. Этой строки в программе ниже нет.
words = ["soup", "bread", "rice"]
words.sort()
print(words)
На экране bread, затем rice, затем soup. soup больше не первый. Это тот же список, с которого вы начали. Сменились только места.
counts начинается с 5, затем 0, затем 2. counts.sort() ставит эти числа по величине. 0 меньше 2, а 2 меньше 5, поэтому список становится 0, затем 2, затем 5. Этот 0 — сохранённое число. Оно выходит вперёд, потому что оно самое маленькое, а не из-за номера места.
counts = [5, 0, 2]
counts.sort()
print(counts)
На экране 0, затем 2, затем 5. Длина по-прежнему 3. Новое число не появилось, и ни одно не пропало.
Следующая страница — фиксированная группа. Эта страница только расставляет значения списка по порядку. Ту группу она не собирает.
Три экрана
- Что пишет первая программа: первая строка, потом вторая?
- Чем становится words после words.sort()?
- Что пишет третья программа?
- Если написать result = words.sort(), чем будет result?
bread раньше soup
Первый экран сохраняет soup, bread, rice и затем показывает bread, rice, soup. words.sort() оставляет в самом words bread, затем rice, затем soup. counts.sort() пишет 0, затем 2, затем 5. result = words.sort() сделал бы result равным None. Следующая страница — фиксированная группа. Эта страница только упорядочивает список.
🧠 Проверьте Свои Знания
Проверьте Свои Знания
Бросьте себе вызов с помощью этой интерактивной викторины и узнайте, насколько хорошо вы понимаете тему
📝 Инструкции
- Внимательно прочитайте каждый вопрос
- Выберите лучший ответ на каждый вопрос
- Вы можете пересдавать тест столько раз, сколько захотите
- Ваш прогресс будет показан вверху