Автор оригинала: Team Python Pool.
Вступление
Строки Python являются неизменяемыми, то есть мы можем изменять строки в соответствии с выполняемыми операциями. Манипуляция строками-самая важная функция python. Вы можете манипулировать строкой с помощью многих методов, таких как методы нарезки строк, циклического перебора элементов и методы строк. Но. Иногда мы приходим к ситуации, когда нам нужно проверить, пуста ли строка Python или нет, а список пуст . В этой статье мы обсудим способы проверки того, является ли строка пустой или нет в Python.
NOTE : String which has spaces in them are empty string but has a non-zero size.
7 Различных способов проверить, пуста ли строка или нет
Давайте обсудим некоторые способы, с помощью которых мы можем проверить, является ли строка пустой строкой или нет.
1. Использование метода len()
Мы будем вычислять длину строки с помощью len() в python. Затем мы проверим, если длина строки равна 0, то строка пуста; в противном случае-нет.
NOTE: If the string contains spaces in it the string is not treated as the empty string by using the len() function in python
Давайте рассмотрим пример для лучшего понимания концепции:
#input empty with and without spaces string s = "" str = " " x = len(s) y = len(str) if x == 0: print("string is empty") else: print("string is not empty") if y == 0: print("string is empty") else: print("string is not empty")
Выход:
string is empty string is not empty
Объяснение:
Здесь мы взяли две входные строки, s и str. s-пустая строка, а str имеет пробелы. Затем мы вычислили длину обеих строк с помощью функции len() в python. Затем мы применили цикл if-else и проверили, если длина строки равна 0, то строка печати пуста, а если она не пуста, то печать не пуста. В len () пробелы не рассматриваются как пустые в строке, что дает вывод как не пустая строка. Наконец, мы напечатали выходные данные обеих строк.
2. Использование оператора not Для Проверки Того, Является Ли Строка Пустой Строкой В Python
Оператор Not используется для выполнения той же задачи, что и функция len (). Пустая строка всегда эквивалентна False в Python. Если мы хотим проверить, является ли строка пустой или нет, мы можем проверить ее с помощью оператора not .
NOTE: If the string contains spaces in it the string is not treated as the empty string by using the not operator in python
Давайте рассмотрим пример для лучшего понимания концепции:
#input empty with and without spaces string s = "" str = " " if not s: print("string is empty") else: print("string is not empty") if not str: print("string is empty") else: print("string is not empty")
Выход:
string is empty string is not empty
Объяснение:
Здесь мы взяли две входные строки, s и str. s-пустая строка, а str имеет пробелы. Затем мы применили условие if else, в котором мы проверили, если нет в строке, то строка пуста. В противном случае он не пуст. Оператор not также не обрабатывает пробелы как пустую строку, так что выходные данные будут приходить как не пустая строка второй входной строки. Наконец-то мы напечатали результат.
3. Использование функции and operator + strip() для проверки того, является ли строка пустой строкой в python
Иногда мы видим, что пробелы, присутствующие в строке, не рассматриваются как пустые строки. Таким образом, когда мы проверяем пустую строку, мы также можем проверить наличие пробелов с помощью функции strip ().
Давайте рассмотрим пример для лучшего понимания концепции:
#input empty with and without spaces string s = "" str = " " if s and s.strip(): print("string is not empty") else: print("string is empty") if str and str.strip(): print("string is not empty") else: print("string is empty")
Выход:
string is empty string is empty
Объяснение:
Здесь мы взяли две входные строки, s и str. s-пустая строка, а str имеет пробелы. Мы применили условие if-else и проверили с помощью функции strip (), что строка пуста или нет. Если условие становится ложным, это означает, что строка пуста, а остальные блоки выполняются. В этой функции пробелы также рассматриваются как пустые строки. Наконец-то мы напечатали результат.
4. Использование функции Strip() только Для Проверки Пустой Строки В Python
Иногда мы видим, что пробелы, присутствующие в строке, не рассматриваются как пустые строки. Таким образом, когда мы проверяем пустую строку, мы также можем проверить наличие пробелов с помощью функции strip ().
Давайте рассмотрим пример для лучшего понимания концепции:
#input empty with and without spaces string s = "" str = " " if s.strip(): print("string is not empty") else: print("string is empty") if str.strip(): print("string is not empty") else: print("string is empty")
Выход:
string is empty string is empty
Объяснение:
Здесь мы взяли две входные строки, s и str. s-пустая строка, а str имеет пробелы. Мы применили условие if else, при котором мы удаляем строки, то есть пробелы удаляются, а затем, если строка становится пустой, она будет пустой строкой. В противном случае строка не будет пустой. Наконец-то мы напечатали результат.
5. Использование not operator + str.isspace()
Он работает так же, как и функция strip (), поскольку проверяет наличие пробелов в полосе. Но функция strip() занимает много времени по сравнению с функцией str. isspace (), потому что strip() должна выполнять операцию strip, которая требует больших вычислительных нагрузок.
Давайте рассмотрим пример для лучшего понимания концепции:
#input empty with and without spaces string s = "" str = " " if s and not s.isspace(): print("string is not empty") else: print("string is empty") if str and not str.isspace(): print("string is not empty") else: print("string is empty")
Выход:
string is empty string is empty
Объяснение:
Здесь мы взяли две входные строки, s и str. s-пустая строка, а str имеет пробелы. Мы применили условие if-else. В условии if-else мы применили функцию isspace () , которая проверит все строковые пробелы. Наконец, мы напечатали вывод, и вы можете видеть вывод, что обе строки пусты.
6. Использование метода __eq__
Dunder в основном сообщает методы, которые имеют двойное подчеркивание до и после их имен. Мы также можем проверить пустую строку с помощью метода __eq__.
NOTE: If the string contains spaces in it the string is not treated as the empty string by using the __eq__ method in python
Давайте рассмотрим пример для лучшего понимания концепции:
#input empty with and without spaces string s = "" str = " " if "".__eq__(s): print("string is empty") else: print("string is not empty") if "".__eq__(str): print("string is empty") else: print("string is not empty")
Выход:
string is empty string is not empty
Объяснение:
Здесь мы взяли две входные строки, s и str. s-пустая строка, а str имеет пробелы. Мы взяли метод __eq__. Мы применили данный метод в условии if-else и проверили, пуста ли строка или нет. Наконец-то мы напечатали результат. Этот метод также не рассматривает пробелы как пустые строки.
7. Использование Регулярных Выражений Для Проверки Пустой Строки В Python
Мы можем создать шаблон регулярных выражений, чтобы проверить, является ли данная строка пустой или содержит только пробелы.
Давайте рассмотрим пример для лучшего понимания концепции:
#import re library import re s = "" str = " " if not s or re.search("^\s*$", s): print('String is empty or has spaces') else: print('String is not empty') if not s or re.search("^\s*$", s): print('String is empty or has spaces') else: print('String is not empty')
Выход:
String is empty or has spaces String is empty or has spaces
Объяснение:
Здесь мы взяли две входные строки, s и str. s-пустая строка, а str имеет пробелы. Мы импортировали библиотеку re в python. Затем мы применили условие if-else с заданным форматом, чтобы проверить, является ли строка пустой или нет. Если условие if удовлетворяет, то вывод выводится как пустая строка. В противном случае вывод выводится как не пустая строка. Следовательно, вы можете видеть результат.
Также Читайте: 5 Способов проверить, является ли строка целочисленной в Python
Вывод
В этом уроке мы узнали о концепции проверки того, является ли строка пустой или нет, и содержит ли она только пробелы или нет. Мы подробно объяснили всю концепцию, взяв все способы проверить, является ли строка пустой. Все способы подробно объясняются с помощью примеров. Вы можете использовать любой из методов, которые вам нравятся, в соответствии с требованиями вашей программы или проекта.
Однако, если у вас есть какие-либо сомнения или вопросы, дайте мне знать в разделе комментариев ниже. Я постараюсь помочь вам как можно скорее.