Основные приемы работы с пустыми строками в Python

Раздел: Основы Python -> Строки

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

Как создать пустую строку в Python?

Пустая строка это строка, не содержащая ни одного символа. В Python она создается с помощью пары кавычек без символов между ними: "" или ''. Это единственный способ представить пустую строку. Никакого специального escape-символа для пустой строки не существует.

empty_string = ""
print(repr(empty_string))

Python strip (метод strip в python)

''

Python повторить строку (повторение строки в python)

Как проверить, является ли строка пустой?

Самый простой и идиоматичный способ использовать оператор not. Пустая строка в логическом контексте эквивалентна False.

s = ""
if not s:
    print("Строка пуста")

Tuple в str python (преобразование кортежа в строку в python)

Строка пуста

Python объект в строку (преобразование объекта в строку в python)

Важно

Если переменная может быть None, то проверка if not s также вернет True для None. В таких случаях лучше сначала проверить на None, либо использовать явное сравнение s == "".

def is_empty(s):
    if s is None:
        return False
    return len(s) == 0

Python convert string (преобразование строк в python)

Как проверить пустую строку с помощью len()?

Функция len() возвращает количество символов. Если длина равна нулю, строка пуста. Цель использования: когда нужно точное количество символов или при необходимости обработки только непустых строк.

s = ""
if len(s) == 0:
    print("Строка пуста")

Python str to bytes (преобразование строки в байты в python)

Строка пуста

функция разделить python (разделение строки на список в python)

При использовании len() необходимо, чтобы объект был строкой. Для None вызов len() вызовет ошибку TypeError. Поэтому перед вызовом нужна проверка на None.

Как сравнить строку с пустой строкой напрямую?

Использование оператора == с литералом "". Цель: когда важно различать пустую строку и другие ложные значения, особенно в сочетании с неизвестным типом.

s = ""
if s == "":
    print("Строка пуста")

вывести первый символ строки python (вывести первый символ строки в python)

Строка пуста

вывести символ строки python (вывод символа строки в python)

Однако если s может содержать пробелы, то s == "" вернет False, даже если строка визуально кажется пустой. В таких случаях нужен другой подход.

Как проверить, что строка пуста или состоит только из пробелов?

Метод strip() удаляет начальные и конечные пробельные символы. Если после удаления длина равна нулю, строка считается пустой (или пробельной). Цель: при обработке пользовательского ввода, где пробелы могут быть лишними.

s = "   "
if not s.strip():
    print("Строка пуста или состоит из пробелов")

вывести длину строки python (вывести длину строки в python)

Строка пуста или состоит из пробелов

вывести элемент строки python (вывод конкретного символа строки по индексу в python)

Примечание

Метод strip() не изменяет исходную строку, а возвращает новую. Исходная строка остается без изменений.

Как использовать метод isspace() для проверки, что строка состоит только из пробелов?

Метод isspace() возвращает True, если все символы строки являются пробельными. Если строка пуста, isspace() вернет False, поэтому для пустой строки его применять нельзя. Цель: когда нужно удостовериться, что строка содержит исключительно пробельные символы (но не пустая).

s = "   "
if s and s.isspace():
    print("Строка состоит только из пробелов")

задания на строки python (задания на строки в python)

Строка состоит только из пробелов
- Python последнее слово в строке (извлечение последнего слова из строки в python)
- индекс элемента строки python (получение индекса символа или подстроки в строке python)
- Python номера символов (номера (индексы) символов в строке python)

Расширенные примеры работы с пустыми строками

Ниже приведены дополнительные примеры, демонстрирующие различные случаи использования пустой строки в Python.

Пример 1: Инициализация и конкатенация в цикле
Пример
result = ""
for i in range(5):
    result += str(i)
print(result)
01234

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

Пример 2: Фильтрация пустых строк из списка
Пример
strings = ["hello", "", "world", " ", "python"]
non_empty = list(filter(None, strings))
print(non_empty)
['hello', 'world', ' ', 'python']

filter(None, ...) удаляет элементы, которые в логическом контексте False. Строка из пробела " " осталась, так как она не пустая. Чтобы удалить и пробельные строки, используйте filter(lambda x: x.strip() != '', strings).

Пример 3: Пустая строка как разделитель в join()
Пример
parts = ["a", "b", "c"]
delimiter = ""
result = delimiter.join(parts)
print(repr(result))
'abc'

При пустом разделителе join() просто соединяет строки без разделителя.

Пример 4: Чтение файла с пропуском пустых строк
Пример
data = "строка1\n\nстрока2\n\n\nстрока3"
lines = data.splitlines()
non_empty_lines = [line for line in lines if line]
print(non_empty_lines)
['строка1', 'строка2', 'строка3']

Генератор списка отфильтровывает строки нулевой длины.

Пример 5: Сравнение с None и другими ложными значениями
Пример
values = [None, "", "text", 0]
for v in values:
    if v is None:
        print(f"{v!r} is None")
    elif v == "":
        print(f"{v!r} is empty string")
    elif not v:
        print(f"{v!r} is falsy")
    else:
        print(f"{v!r} is truthy")
None is None
'' is empty string
'text' is truthy
0 is falsy

Важно различать None и пустую строку в условных конструкциях.

Пример 6: Пустая строка в f-строке с условием
Пример
name = ""
greeting = f"Hello, {name if name else 'Guest'}!"
print(greeting)
Hello, Guest!

Если name пусто, подставляется запасное значение.

Пример 7: Регулярное выражение для поиска пустой строки
Пример
import re
pattern = r'^$'
test_string = ""
if re.search(pattern, test_string):
    print("Строка пуста")
else:
    print("Строка не пуста")
Строка пуста

Шаблон ^$ соответствует строке нулевой длины.

Пример 8: Пустая строка в словаре
Пример
d = {"key": ""}
if d["key"] == "":
    d["key"] = "default"
print(d)
{'key': 'default'}

Проверка и замена пустого значения.

Пример 9: Пустая строка как значение по умолчанию аргумента функции
Пример
def process(value=""):
    if value == "":
        print("Используется значение по умолчанию")
    else:
        print(f"Обрабатывается: {value}")
process()
process("data")
Используется значение по умолчанию
Обрабатывается: data

Позволяет вызывать функцию без аргументов, обрабатывая пустую строку особым образом.

Пример 10: Строка, содержащая только символ новой строки
Пример
line = "\n"
if line.strip() == "":
    print("Строка пуста после удаления пробелов")
else:
    print("Строка непуста")
Строка пуста после удаления пробелов

Метод strip() удаляет и символы перевода строки, поэтому строка из одного \n считается пустой.

Символ пустой строки в Python - comments

En
символ пустой строки python (python)