Извлечение последних 4 символов строки в Python: срезы

Пройдите тест, узнайте какой профессии подходите

Я предпочитаю
0%
Работать самостоятельно и не зависеть от других
Работать в команде и рассчитывать на помощь коллег
Организовывать и контролировать процесс работы

Быстрый ответ

Для того чтобы в Python извлечь последние 4 символа из строки, можно использовать следующий код:

Python
Скопировать код
last_four = my_string[-4:]

Применение отрицательного индексирования в срезе позволяет получить подстроку, начиная с четвертого символа с конца строки и до её конца.

Кинга Идем в IT: пошаговый план для смены профессии

Заметка: строка может быть короче четырёх символов

Даже в случае, если длина вашей строки не доходит до 4 символов, указанный выше метод среза будет надлежащим образом функционировать:

Python
Скопировать код
short_string = "Lot"
last_four = short_string[-4:]  # Вернет "Lot".

Здесь переменная last_four будет содержать значение "Lot".

Крайности Python

При применении среза к пустой строке возвращается пустая подстрока:

Python
Скопировать код
empty_string = ""
last_four = empty_string[-4:]  # Результатом будет "".

Python обрабатывает ситуацию с срезами из пустой строки без ошибок, что очень удобно при работе со строковыми типами.

Визуализация

Процесс извлечения последних 4 символов строки можно ассоциировать с процессом упаковки чемодана перед поездкой:

Python
Скопировать код
string = 'Let\'s pack for trip!'
last_4 = string[-4:]

Результат будет выглядеть так:

Markdown
Скопировать код
Чемодан:  "Let's pack for trip!"
Последнее упаковано: "trip"

Не забудьте упаковать всё самое необходимое! ✈️🧳

Повороты и изгибы: варианты реализации

Инверсия строки и срез

Вы можете перевернуть строку и взять первые 4 символа, а затем снова её перевернуть:

Python
Скопировать код
reversed_four = my_string[::-1][:4][::-1]
# Python превращается в onhtyP!

Использование функции

Может оказаться полезным создать функцию для получения последних символов из строки:

Python
Скопировать код
def get_last_n_chars(string, n):
    return string[-n:] if len(string) >= n else string

# Например:
last_four = get_last_n_chars("Programming", 4)

Условный срез

При неизвестной длине строки используйте условный срез:

Python
Скопировать код
last_four = my_string[-4:] if len(my_string) >= 4 else my_string

Этот подход использует тернарный оператор и делает выбор между срезом и возвратом исходной строки.

Практическое применение

Строковые срезы полезны для извлечения информации. Например, они могут использоваться при работе с расширениями файлов, со специальными кодами и при форматировании данных.

Парсинг расширений файлов

Пример использования среза для получения расширения файла:

Python
Скопировать код
file_name = "selfie.jpg"
extension = file_name[-4:]  # Работает, если расширение не более 4 символов.

Работа с идентификационными номерами и специальными кодами

Выделение проверочных кодов из идентификационных номеров:

Python
Скопировать код
id_number = "1234-5678-91238"
check_code = id_number[-4:]
# Вернет "1238".

Полезные материалы

  1. 3. Неформальное Введение в Python — Документация Python 3.12.1 — Официальная документация по Python.
  2. Как работает срез в Python – Stack Overflow — Глубокий разбор темы в контексте Python.
  3. Python – Срез строки — Иллюстрированные примеры и интерактивное обучение срезу в Python.
  4. Строковые методы в Python | Programiz — Детальный обзор работы со строками в Python.
  5. Манипуляции со строками в Python – PythonForBeginners.com — Основные приемы и примеры работы со строками в Python.