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

В этом учебнике вы узнаете, как использовать Python для проверки, является ли строка пустой или нет. Умение работать со строками и определять, пусты они или нет, — это важный навык. Строки Python неизменяемы, что означает, что их нельзя изменить после создания. Поэтому может быть полезно проверить, пуста ли строка или нет.

К концу этого учебника вы узнаете:

* Что считается пустой строкой в Python
* Как использовать ключевое слово not для проверки, является ли строка пустой
* Как проверять, является ли строка пустой, на основе её длины

#### Содержание

* [Как создать пустую строку в Python](#kak-sozdat-pustuyu-stroku-v-python)
* [Считаются ли строки пробелов пустыми в Python?](#schitayutsya-li-stroki-probelov-pustymi-v-python)
* [Использование `not` для проверки, является ли строка пустой в Python](#ispolzovanie-not-dlya-proverki-yavlyaetsya-li-stroka-pustoi-v-python)
* [Использование `len` для проверки, является ли строка пустой в Python](#ispolzovanie-len-dlya-proverki-yavlyaetsya-li-stroka-pustoi-v-python)
* [Использование `strip` для проверки, является ли строка пустой в Python](#ispolzovanie-strip-dlya-proverki-yavlyaetsya-li-stroka-pustoi-v-python)
* [Заключение](#zaklyuchenie)
* [Дополнительные ресурсы](#dopolnitelnye-resursy)

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

В Python можно создать пустую строку несколькими способами. Самый простой и понятный способ — это создать строку, которая ничего не содержит. Это можно сделать с помощью одинарных, двойных или тройных кавычек. Давайте посмотрим, как это выглядит:

```python
# Создание пустой строки в Python
empty1 = ''
empty2 = ""
empty3 = """"""
```

Аналогично, мы можем использовать функцию конструктора строки `str()` для создания пустой строки в Python. Давайте посмотрим, как это выглядит, и выведем её:

```python
# Создание пустой строки в Python
empty = str()
print(empty)

# Возвращает
#
```

### Считаются ли строки пробелов пустыми в Python?

В приведенных выше примерах строки были действительно пустыми. Теперь возьмем такую строку:

```python
# Это пусто?
empty = ' '
```

Считаем ли мы это пустым? Ну, это зависит от точки зрения. С технической точки зрения строка не пуста. С практической точки зрения строка пуста. Чтобы убрать семантику, давайте считать строку, состоящую только из пробелов или пробельных символов, "пустой".

### Использование `not` для проверки, является ли строка пустой в Python

Самый простой и наиболее "питоновский" способ проверки, является ли строка пустой в Python, — это использовать блок **if-else** с ключевым словом <mark style="color:red;">**not**</mark>. Пустые строки в Python считаются ложными, то есть они оцениваются как <mark style="color:blue;">**False**</mark>.

Из-за этого мы можем легко проверить, является ли строка пустой, проверив её булеву истинность:

```python
# Проверка, является ли строка пустой в Python
string = ''
print(not string)

# Возвращает: True
```

Это выражение оценивается как <mark style="color:red;">**not**</mark> <mark style="color:blue;">**False**</mark>, что затем оценивается как <mark style="color:blue;">**True**</mark>.

Более чистый и практичный способ написать это — использовать блок **if-else.** С его помощью мы можем выполнить выражение, когда строка пуста или не пуста:

```python
# Проверка, является ли строка пустой с помощью if-else
string = ''

if not string:
    print("Пустая строка!")
else:
    print("Не пустая строка!")

# Возвращает:
# Пустая строка!
```

В следующем разделе вы узнаете, как проверить, является ли строка пустой, используя функцию `len()`.

### Использование `len` для проверки, является ли строка пустой в Python

Поскольку пустые строки в Python действительно пусты, вы также можете проверить длину строки, чтобы узнать, пуста она или нет. Это делается с помощью функции `len()`, которая возвращает длину переданного ей итерируемого объекта.

Давайте посмотрим, как мы можем использовать эту функцию для проверки, является ли строка пустой или нет:

```python
# Использование len() для проверки, является ли строка пустой
string = ''

if len(string) == 0:
    print("Пустая строка!")
else:
    print("Не пустая строка!")

# Возвращает
# Пустая строка!
```

Имейте в виду, что это проверяет только то, действительно ли строка пуста. В следующем разделе вы узнаете, как проверить, является ли строка либо пустой, либо пустой.

### Использование `strip` для проверки, является ли строка пустой в Python

В этом разделе вы узнаете, как проверить, является ли строка как пустой, так и пустой, то есть содержит ли она только пробелы. Для этого сначала нужно применить метод `.strip()` к строке, который возвращает строку без пробелов. Затем мы можем использовать либо ключевое слово not, либо функцию `len()` для проверки, пуста ли она.

Давайте посмотрим, как это выглядит. Мы создадим строку, содержащую несколько пробелов, и объединим метод `.strip()` с ключевым словом not:

```python
# Проверка, является ли строка пустой в Python
string = ' '

if not string.strip():
    print("Пустая строка!")
else:
    print("Не пустая строка!")

# Возвращает
# Пустая строка!
```

Обратите внимание, что поскольку строки в Python неизменяемы, исходная строка не будет изменена.

### Заключение

В этом учебнике вы узнали, как использовать Python для проверки, является ли строка пустой или пустой. Сначала вы узнали, как создать пустую строку в Python, используя либо прямое присваивание, либо конструктор строки. Затем вы узнали, как проверить, пуста ли строка, используя ключевое слово not и функцию `len()`. После этого вы узнали, как работать с пустыми строками, то есть строками, которые содержат только пробелы.

### Дополнительные ресурсы

Чтобы узнать больше о связанных темах, ознакомьтесь с учебниками ниже:

* Python: Удаление символа новой строки из строки
* Python `zfill & rjust`: Добавление символов в строку Python
* Python `rfind`: Найти индекс последней подстроки в строке
* Python: Удаление специальных символов из строки
* [Официальная документация конструктора строк Python](https://docs.python.org/3/library/stdtypes.html)
