Глава 11 · Очень много информации!

Мини-проект — перестановка имени и фамилии

Собираем split(), распаковку и строки из главы 8 в одной короткой, но полезной программе — и подводим итоги.

Финальный мини-проект главы: разбить полное имя на части и собрать заново в другом порядке — «Фамилия Имя» вместо «Имя Фамилия», используя методы строк из главы 8 и списки из этой главы.

perestanovka_imeni.py
full_name = input("Введите имя и фамилию через пробел: ")
parts = full_name.split()   # split() возвращает список
name, surname = parts        # распаковка, как у кортежей

print(f"{surname} {name}")
split() возвращает список
Мы видели .split() в главе 8, но не заостряли внимание на том, что результат — это именно list. Теперь, зная про списки, можно распаковывать его так же, как распаковывали кортежи в разделе 11.6.
★★★ Задача повышенной сложности
Три части имени

Обработайте случай с отчеством (три слова): «Имя Отчество Фамилия» → «Фамилия И.О.» с инициалами.

Итоги

Что мы узнали в этой главе

  • Список (list) — упорядоченная, изменяемая коллекция значений в [].
  • Кортеж (tuple) — как список, но неизменяемый, в ().
  • Множество (set) — коллекция без повторов и без гарантированного порядка, в {}.
  • Словарь (dict) — пары «ключ: значение», тоже в {}, но с двоеточиями.
  • У списков десятки полезных методов: append, insert, remove, pop, sort, reverse, index, count и другие.
  • Генератор списков [выражение for элемент in коллекция] — компактная альтернатива циклу с append().