logo

Як перевірити, чи рядок порожній у Python

Рядки Python залишаються незмінними, що означає, що ми можемо змінювати їх на основі операцій, які ми виконуємо. Найважливішою функціональністю Python є маніпулювання рядками. Щоб змінити рядок, можна використовувати багато методів, у тому числі підходи до нарізки рядка, проходження його елементів у циклі та методи рядка. Важливо розуміти, що рядок із пробілами фактично є порожнім рядком ненульової довжини. Ця проблема буде обговорюватися в цьому підручнику, а також можливі способи її вирішення. У результаті, коли ми використовуємо тільки() або ' ні ' для перевірки порожнього рядка, він фактично вважає пробіл не менш ніж символом рядка, тому рядок із пробілом не вважатиметься порожнім рядком.

У Python ми можемо використовувати один із основних способів, описаних нижче, щоб перевірити наявність порожнього рядка.

  1. Використання оператора not
  2. Використання функції len().
  3. Використання not + string.isspace()
  4. Використання len() + string.strip()
  5. Використання and + string.strip()
  6. Використання __eq__

Використання оператора not

The ні оператор виконує ту саму роботу, що й оператор тільки() функція. У Python порожній рядок справді дорівнює False. The ні можна використовувати для визначення того, чи дійсно рядок порожній чи ні. The ні Операція в Python запобігає інтерпретації рядка як порожнього, якщо він містить пробіли.

приклад

У цьому прикладі ми використали рядки двох типів, string1 і string2. Рядок2 містить пробіли, а рядок1 є порожнім рядком. Потім ми використали умову «if else», щоб перевірити, чи заданий рядок порожній, якщо його немає в рядку. Однак він не порожній. Оператор not не розглядає пробіли як порожні рядки, тому результат не буде порожнім рядком у випадку другого вхідного рядка. Нарешті результат надруковано.

екземпляр java

код:

 #taking an empty string and a string with spaces only string1 = '' string2 = ' ' if not string1: print(f'string, string1 = '{string1}', with no spaces is empty') else: print(f'string, string1 = '{string1}', with no spaces is not empty') if not string2: print(f'string, string2 = '{string2}', with spaces is empty') else: print(f'string, string2 = '{string2}', with spaces is not empty') 

Вихід:

 string, string1 = '', with no spaces is empty string, string2 = ' ', with spaces is not empty 

Використання методу len().

Ми будемо використовувати python тільки() функція визначення довжини рядка. Тоді, якщо довжина рядка дорівнює 0, рядок порожній; інакше це не так. При використанні тільки() у Python, рядок насправді не вважається порожнім, якщо він містить пробіли.

приклад

У цьому прикладі ми використали рядки двох типів, string1 і string2. Рядок2 містить пробіли, а рядок1 є порожнім рядком. Потім довжина кожного рядка була обчислена за допомогою функції len() Python. Потім ми використали цикл «if-else», щоб перевірити, чи довжина рядка дорівнює нулю, і в цьому випадку умова друкує, що рядок порожній, і в цьому випадку рядок друку не є порожнім. Пробіли в рядку не вважаються порожніми тільки() , що призводить до непорожнього рядка. Нарешті, ми надрукували результат обох рядків.

код:

 #taking an empty string and a string with spaces only string1 = '' string2 = ' ' length1 = len(string1) length2 = len(string2) if length1 == 0: print(f'string, string1 = '{string1}', with no spaces is empty') else: print(f'string, string1 = '{string1}', with no spaces is not empty') if length2 == 0: print(f'string, string2 = '{string2}', with spaces is empty') else: print(f'string, string2 = '{string2}', with spaces is not empty') 

Вихід:

 string, string1 = '', with no spaces is empty string, string2 = ' ', with spaces is not empty 

Використання not Operator + str.isspace()

Він перевіряє наявність пробілів у смузі так само, як і смуга () функція робить. однак, смуга () функція займає багато часу, коли протиставляється вул. isspace() оскільки strip() має виконувати операцію strip, яка вимагає багато обчислювальної роботи.

Java string replaceall

приклад

У цьому прикладі ми використали рядки двох типів, string1 і string2. Рядок2 містить пробіли, а рядок1 є порожнім рядком. Використано умову «якщо-інакше». Ми використовували isspace() метод в умові if else, який перевіряє всі пробіли в рядках. Нарешті вихідні дані було надруковано, і ви бачите, що обидва рядки порожні.

проста програма на java

код:

 #taking an empty string and a string with spaces only string1 = '' string2 = ' ' if string1 and not string1.isspace(): print(f'string, string1 = '{string1}', with no spaces is empty') else: print(f'string, string1 = '{string1}', with no spaces is not empty') if string2 and not string2.isspace(): print(f'string, string2 = '{string2}', with spaces is empty') else: print(f'string, string2 = '{string2}', with spaces is not empty') 

Вихід:

 string, string1 = '', with no spaces is not empty string, string2 = ' ', with spaces is not empty 

Використання len() + string.strip()

У Python використовуйте len() + string.strip() техніка для перевірки абсолютно порожнього рядка. Пробіли в рядку видаляються за допомогою string.strip() метод. Якщо в рядку є пробіл, смуга () метод видаляє його, і тільки() функція перевіряє, порожній рядок чи ні.

приклад

Незалежно від того, скільки пробілів ми додаємо в рядок, він видаляє їх усі та перевіряє довжину рядка; якщо він повертає 0, рядок порожній; інакше це не так.

код:

 #taking an empty string and a string with spaces only string1 = '' string2 = ' ' if len(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 len(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 

Використання оператора «і» + функція strip().

Ми помітили, що пробіли в рядках не завжди інтерпретуються як порожні рядки. Отже, коли ми використовуємо смуга () перевірити, чи рядок порожній, ми також можемо перевірити наявність пробілів.

mylivecricket

приклад

У цьому прикладі ми використали два рядки введення, string1 і string2. Рядок2 містить пробіли, а рядок1 є порожнім рядком. Потім ми використали умову if-else і смуга () щоб побачити, чи був рядок порожнім чи ні. Якщо умова False, рядок порожній, а блоки виконуються в іншому випадку. У цьому методі пробіли також розглядаються як порожній рядок. Нарешті результат надруковано.

код:

 #input empty with and without spaces string s = '' str = ' ' 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 

Використання функції Strip().

Ми помітили, що пробіли в рядках не завжди інтерпретуються як порожні рядки. Отже, коли ми використовуємо смуга () перевірити, чи рядок порожній, ми також можемо перевірити наявність пробілів.

приклад

У цьому прикладі ми використали два рядки введення, string1 і string2. Рядок1 містить пробіли, а рядок2 є порожнім рядком. Ми використали умову if else для видалення рядків, видалення пробілів і повернення порожнього рядка, якщо рядок стає порожнім. Інакше рядок не є порожнім. Нарешті результат надруковано.

код:

 #input empty with and without spaces string s = '' str = ' ' if 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.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 

Використання методу __eq__

Dunder ідентифікує методи двома підкресленнями перед і після їхніх імен. The __eq__ метод також можна використовувати для перевірки порожнього рядка. При виклику __eq__ у Python, рядок не вважається порожнім, якщо він містить пробіли.

приклад

У цьому прикладі ми використали два рядки введення, string1 і string2. Рядок2 містить пробіли, а рядок1 є порожнім рядком. The __eq__ була використана функція. В умові if-else ми використовували заданий метод, щоб перевірити, чи є рядок порожнім. Нарешті результат надруковано. У цьому підході пробіли не розглядаються як порожні рядки.

код:

 #taking an empty string and a string with spaces only string1 = '' string2 = ' ' if ''.__eq__(string1): print(f'string, string1 = '{string1}', with no spaces is empty') else: print(f'string, string1 = '{string1}', with no spaces is not empty') if ''.__eq__(string2): print(f'string, string1 = '{string2}', with no spaces is empty') else: print(f'string, string1 = '{string2}', with no spaces is not empty') 

Вихід:

 string, string1 = '', with no spaces is empty string, string1 = ' ', with no spaces is not empty