Програма Python для перевірки того, чи рядок порожній чи ні
Рядки Python є незмінними та мають більш складну обробку під час обговорення їхніх операцій. Зауважте, що рядок із пробілами насправді є порожнім рядком, але має ненульовий розмір. Ця стаття також обговорювала цю проблему та її вирішення. Давайте розглянемо різні способи Перевірте, чи рядок порожній Python .
приклад
Input: [' '] Output: Yes Explanation: In this, We are checking if the string is empty or not.
Перевірте порожній рядок у Python
Ось різні способи перевірити, чи є рядок порожнім у Python.
- Використання len()
- Використання not()
- Використання not + str.strip()
- Використання not + str.isspace
- Використання розуміння списку
- Використання Bool
- Використання смугових методів
- Використання функції Operator + strip().
- Використання функції all().
- Використання try/except
Python Перевірка порожнього рядка за допомогою Len()
Використання тільки() є найбільш загальним методом перевірки рядків нульової довжини. Незважаючи на те, що він ігнорує той факт, що рядок із лише пробілами також слід практично вважати порожнім рядком, навіть якщо він ненульовий.
Python3
# initializing string> test_str1> => ''> test_str2> => ' '> # checking if string is empty> print> (> 'The zero length string without spaces is empty ? : '> , end> => '')> if> (> len> (test_str1)> => => 0> ):> > print> (> 'Yes'> )> else> :> > print> (> 'No'> )> # prints No> print> (> 'The zero length string with just spaces is empty ? : '> , end> => '')> if> (> len> (test_str2)> => => 0> ):> > print> (> 'Yes'> )> else> :> > print> (> 'No'> )> |
Вихід
The zero length string without spaces is empty ? : Yes The zero length string with just spaces is empty ? : No
Рядок перевірки Python порожній використовуючи Not()
Оператор not також може виконувати завдання, подібне до len() і перевіряти рядок довжини 0, але, як і вище, він вважає рядок із лише пробілами також непорожнім, що практично не повинно бути правдою.
Python3
# initializing string> test_str1> => ''> test_str2> => ' '> # checking if string is empty> print> (> 'The zero length string without spaces is empty ? : '> , end> => '')> if> (> not> test_str1):> > print> (> 'Yes'> )> else> :> > print> (> 'No'> )> # prints No> print> (> 'The zero length string with just spaces is empty ? : '> , end> => '')> if> (> not> test_str2):> > print> (> 'Yes'> )> else> :> > print> (> 'No'> )> |
Вихід
The zero length string without spaces is empty ? : Yes The zero length string with just spaces is empty ? : No
Порожній рядок Python в не співай + str.strip()
Проблему порожнього рядка + нульової довжини можна усунути за допомогою strip(), strip() повертає true, якщо зустрічає пробіли, тому перевірка на його наявність може вирішити проблему перевірки чисто порожнього рядка.
Python3
# initializing string> test_str1> => ''> test_str2> => ' '> # checking if string is empty> print> (> 'The zero length string without spaces is empty ? : '> , end> => '')> if> (> not> (test_str1> and> test_str1.strip())):> > print> (> 'Yes'> )> else> :> > print> (> 'No'> )> # prints Yes> print> (> 'The zero length string with just spaces is empty ? : '> , end> => '')> if> (> not> (test_str2> and> test_str2.strip())):> > print> (> 'Yes'> )> else> :> > print> (> 'No'> )> |
Вихід
The zero length string without spaces is empty ? : Yes The zero length string with just spaces is empty ? : Yes
Перевірте порожній рядок Python u sing not + str.isspace
Працює подібно до описаного вище методу та перевіряє пробіли в рядку. Цей метод є більш ефективним, оскільки strip() також вимагає виконання операції strip, яка вимагає обчислювальних навантажень, якщо ні. місць досить багато.
Python3
# initializing string> test_str1> => ''> test_str2> => ' '> # checking if string is empty> print> (> 'The zero length string without spaces is empty ? : '> , end> => '')> if> (> not> (test_str1> and> not> test_str1.isspace())):> > print> (> 'Yes'> )> else> :> > print> (> 'No'> )> # prints Yes> print> (> 'The zero length string with just spaces is empty ? : '> , end> => '')> if> (> not> (test_str2> and> not> test_str2.isspace())):> > print> (> 'Yes'> )> else> :> > print> (> 'No'> )> |
Вихід
The zero length string without spaces is empty ? : Yes The zero length string with just spaces is empty ? : Yes
Перевірте, чи рядок порожній або не використовує розуміння списку
Цей підхід передбачає розбір тексту в список символів за допомогою розуміння списку, а потім визначення того, чи є список порожнім. Ми можемо оцінити, чи є рядок порожнім, оцінивши правдивість списку.
Python3
string> => ''> x> => [> 'no'> if> len> (string)>> 0> else> 'yes'> ]> print> (x)> |
Вихід
['yes']
Перевірте Python Empty String або Not using Bool
Одним із підходів є використання функція bool . Функція bool повертає False для порожніх рядків і True для непорожніх рядків. Ось приклад використання функції bool для перевірки порожнього рядка.
Python3
# Initializing a string> test_str> => ''> # Checking if the string is empty> if> not> bool> (test_str):> > print> (> 'The string is empty.'> )> else> :> > print> (> 'The string is not empty.'> )> #This code is contributed by Edula Vinay Kumar Reddy> |
Вихід
The string is empty.
Ви також можете використовувати функцію bool, щоб перевірити, чи є рядок порожнім після видалення будь-яких пробілів на початку або в кінці за допомогою методу strip:
Python3
# Initializing a string> test_str> => ' '> # Checking if the string is empty after removing leading and trailing whitespaces> if> not> bool> (test_str.strip()):> > print> (> 'The string is empty.'> )> else> :> > print> (> 'The string is not empty.'> )> #This code is contributed by Edula Vinay Kumar Reddy> |
Вихід
The string is empty.
Python перевірити, якщо рядок є порожнім за допомогою методу смуги
Тут ми будемо використовувати Python методи strip(). щоб перевірити, порожній рядок чи ні.
Python3
#input empty with and without spaces string> s> => ''> str> => ' '> > if> s.strip():> > print> (f> 'string, string1 = '{s}', with no spaces is not empty'> )> else> :> > print> (f> 'string, string1 = '{s}', with no spaces is empty'> )> > if> str> .strip():> > print> (f> 'string, string2 = '{str}', with spaces is not empty'> )> else> :> > print> (f> 'string, string2 = '{str}', with spaces is empty'> )> |
Вихід
string, string1 = '', with no spaces is empty string, string2 = ' ', with spaces is empty
Перевірте, чи рядок порожній або не використовується, і функцію Operator + strip().
У цьому підході оператор and використовується для поєднання двох перевірок: визначення того, чи рядок не є None, і визначення того, чи вилучена версія рядка є порожньою. Пробіли на початку та в кінці видаляються з рядка функцією strip().
Python3
#input empty with and without spaces string> string1> => ''> string2> => ' '> > if> string1> and> string1.strip():> > print> (f> 'string, string1 = '{string1}', with no spaces is not empty'> )> else> :> > print> (f> 'string, string1 = '{string1}', with no spaces is empty'> )> > if> string2> and> string2.strip():> > print> (f> 'string, string2 = '{string2}', with spaces is not empty'> )> else> :> > print> (f> 'string, string2 = '{string2}', with spaces is empty'> )> |
Вихід
string, string1 = '', with no spaces is empty string, string2 = ' ', with spaces is empty
Python перевірити, якщо рядок є порожнім, використовуючи функцію all().
Повернене значення функції all() потребує Iterable як вхідних даних. Якщо Iterable порожній або всі його члени істинні, значення істинне. Функція all() може визначити, чи рядок порожній, чи всі його символи хибні (порожній рядок), отримуючи рядок як повторюваний символ.
Python3
string> => ''> if> all> (char.isspace()> for> char> in> string):> > print> (> 'The string is empty'> )> else> :> > print> (> 'The string is not empty'> )> |
Вихід
The string is empty
Підхід bool для перевірки того, чи рядок порожній чи не має a часова складність O(1), оскільки він просто перевіряє істинність значення рядка, що є операцією з постійним часом. The Допоміжне приміщення i s також O(1), оскільки для зберігання істинного значення рядка потрібна лише одна логічна змінна.
Python перевірити порожній рядок за допомогою Try/Except
Використовуючи блок try-except, ви можете визначити в Python, чи є рядок порожнім. За допомогою блоку try-except можна переловлювати та впоратися з певними винятками, які можуть виникнути під час виконання коду. Ви можете грамотно керувати обставинами, коли ви передбачаєте ймовірну помилку, наприклад, коли ви перевіряєте порожній рядок, використовуючи блок try-except.
Python3
# Initialize an empty string> string> => ''> try> :> > # Try to access the first character of the string> > string[> 0> ]> > # If no exception is raised, print 'The string is not empty.'> > print> (> 'The string is not empty.'> )> except> :> > # If a ValueError exception is raised, print 'The string is empty.'> > print> (> 'The string is empty.'> )> |
Вихід
The string is empty
Аналіз складності:
Цей код має постійну часову складність O(1), оскільки він намагається отримати доступ лише до першого символу рядка, що займає однакову кількість часу незалежно від довжини рядка.