Что ты знаешь о строках в Python?

Строка в Python — это неизменяемая (иммутабельная) последовательность символов Unicode.

Короткий ответ

Что ответить на собеседовании

Строка в Python — это неизменяемая (иммутабельная) последовательность символов Unicode.

Подробный разбор

Ответ с пояснениями

Строка в Python — это неизменяемая (иммутабельная) последовательность символов Unicode.

Основные свойства и возможности:

  • Неизменяемость: После создания строку нельзя изменить. Любые операции, которые «изменяют» строку, на самом деле создают новую строку.

  • Последовательность: Символы в строке имеют порядок и доступны по индексу. Индексация начинается с 0.

  • Конкатенация: Объединение строк с помощью оператора +.

    # Пример конкатенации
    s1 = "Hello"
    s2 = "World"
    s3 = s1 + " " + s2
    
  • Повторение: Повторение строки с помощью оператора *.

    # Пример повторения
    s = "abc"
    repeated_s = s * 3 # "abcabcabc"
    
  • Срезы (slices): Извлечение подстроки по индексам.

    # Пример среза
    s = "abcdefg"
    substring = s[1:4] # "bcd"
    
  • Итерация: Перебор символов в строке с использованием цикла for.

    # Iterating through a string
    s = "Python"
    for char in s:
        print(char)
    
  • Длина: Получение длины строки с использованием функции len().

    # Getting string length
    s = "example"
    length = len(s) # 7
    
  • Методы строк: Множество встроенных методов для работы со строками (поиск, замена, форматирование, изменение регистра и т. д.).

Наиболее часто используемые методы:

Метод Описание
str.lower() Возвращает новую строку в нижнем регистре.
str.upper() Возвращает новую строку в верхнем регистре.
str.strip() Удаляет начальные и конечные пробелы (или указанные символы).
str.split() Разбивает строку на список подстрок по разделителю.
str.replace(old, new) Заменяет все вхождения подстроки old на new.
str.find(sub) Возвращает наименьший индекс, где найдена подстрока sub.
str.startswith(prefix) Проверяет, начинается ли строка с заданного префикса.
str.endswith(suffix) Проверяет, заканчивается ли строка заданным суффиксом.
str.join(iterable) Объединяет элементы итерируемого объекта в строку.
  • Форматирование строк: Различные способы встраивания значений переменных в строки.

    • F-строки (предпочтительный способ):

      # F-string formatting
      name = "Alice"
      age = 30
      message = f"Hello, {name}. You are {age} years old."
      
    • Метод .format():

      # .format() method
      name = "Bob"
      age = 25
      message = "Hello, {}. You are {} years old.".format(name, age)
      
    • Старое форматирование с %:

      # Old style (%) formatting
      name = "Charlie"
      age = 35
      message = "Hello, %s. You are %d years old." % (name, age)
      
  • Представление символов: Строки могут содержать любые символы Unicode. Эскейп-последовательности (например, \n для новой строки, \t для табуляции) используются для представления специальных символов.

  • Многострочные строки: Создаются с использованием тройных кавычек (""" или ''').

    # Multiline string
    multiline_text = """This is a
    multiline
    string."""
    

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее