Создание строк
a = "двойные кавычки"b = 'одинарные кавычки'c = """многострочнаястрока"""d = r"C:\new\table"Префикс r отключает обработку escape-последовательностей. Строки в Python хранятся в Unicode и неизменяемы.
Индексы и срезы
s = "Python"print(s[0])print(s[-1])print(s[1:4])print(s[:2])print(s[2:])print(s[::2])print(s[::-1])Результаты: P, n, yth, Py, thon, Pto, nohtyP.
Срез имеет вид [начало:конец:шаг], конец не включается.
Операции
print("ab" + "cd")print("ab" * 3)print(len("Python"))print("th" in "Python")Основные методы
s = " Hello, World "print(s.strip())print(s.lower())print(s.upper())print(s.replace("World", "Python"))print(s.split(","))print("-".join(["a", "b", "c"]))print(s.startswith(" He"))print(s.find("World"))print("hello".capitalize())print("abc".isalpha())print("123".isdigit())Методы не изменяют исходную строку, а возвращают новую.
Форматирование
Предпочтительный способ — f-строки:
name = "Anna"age = 25print(f"{name} — {age} лет")print(f"{age * 2}")print(f"{3.14159:.2f}")print(f"{42:05d}")print(f"{1234567:,}")print(f"{name:>10}")print(f"{name=}")Альтернативы — метод format и оператор %:
print("{} — {}".format(name, age))print("%s — %d" % (name, age))Кодировки
Строку можно превратить в байты и обратно:
data = "Привет".encode("utf-8")print(data)print(data.decode("utf-8"))Escape-последовательности
| Последовательность | Значение |
|---|---|
\n | Перевод строки |
\t | Табуляция |
\\ | Обратный слеш |
\" | Двойная кавычка |
\u0416 | Символ Unicode |
Задания
- Напишите код, который проверяет, является ли строка палиндромом.
- Получите из строки
" one two three "список слов без пустых элементов.
