В этом уроке я объясню «Как удалить скобки из строки Python» с помощью различных методов и примеров.
Это концепция очистки данных, обработки текста или форматирования строк, где разработчики могут использовать этот метод для получения ожидаемого результата.
- С помощью метода replace()
- Используя методы соединения и фильтрации
- С помощью join()
- Используя регулярное выражение
- С помощью метода translate()
- Заключение
С помощью метода replace()
Мы можем легко удалить скобки, заменив их пустой строкой, используя метод str.replace() в Python.
Рассмотрим следующий пример:
def remove_brackets(string, open_bracket, close_bracket):
return string.replace(open_bracket, "").replace(close_bracket, "")
string_with_brackets = "(United) States(of) America"
open_bracket = "("
close_bracket = ")"
string_without_brackets = remove_brackets(string_with_brackets, open_bracket, close_bracket)
print(string_without_brackets)
Выход:
United States of America
Приложены снимки экрана, иллюстрирующие код Python и соответствующий вывод в Visual Studio.

Используя методы соединения и фильтрации
В Python мы можем объединить функцию filter() с пониманием списка, чтобы исключить скобки из строки.
Вот простой пример:
def remove_brackets(string, open_bracket, close_bracket):
return ''.join(filter(lambda x: x not in [open_bracket, close_bracket], string))
string_with_brackets = "Python is(my favorite) Programming Language"
open_bracket = "("
close_bracket = ")"
string_without_brackets = remove_brackets(string_with_brackets, open_bracket, close_bracket)
print(string_without_brackets)
Мы можем легко отфильтровать скобки из строки в список, используя функцию фильтра с пониманием списка с условиями, применяемыми лямбда-функцией в Python, а затем соедините каждый элемент списка с помощью функции join().
''.join(filter(lambda x: x not in [open_bracket, close_bracket], string))
Выход:
Python is my favorite Programming Language
Вот объединенное представление сценария Python и его результатов в Visual Studio.

С помощью join()
Мы можем использовать понимание списка для перебора строковых символов и объединения только этих подстрок, исключая скобки, с помощью функции join() в Python.
Давайте посмотрим пример:
def remove_brackets(string, open_bracket, close_bracket):
return ''.join(char for char in string if char not in [open_bracket, close_bracket])
string_with_brackets = "In USA,((innovation) drives) technological advancements)."
open_bracket = "("
close_bracket = ")"
string_without_brackets = remove_brackets(string_with_brackets, open_bracket, close_bracket)
print(string_without_brackets)
Выход:
In USA, innovation drives technological advancements.
Ниже показан код Python вместе с его выводом, записанный в Visual Studio.

Используя регулярное выражение
Мы также можем использовать регулярные выражения с функцией re.sub() в Python для замены скобок пустой строкой.
Регулярные выражения в Python обеспечивают гибкость и позволяют нам легко обрабатывать более сложные шаблоны и несколько типов скобок.
Например:
import re
def remove_brackets(string, open_bracket, close_bracket):
return re.sub(r'[{}{}]'.format(re.escape(open_bracket), re.escape(close_bracket)), '', string)
string_with_brackets = "[USA] [offers] opportunities [for] diverse [lifestyles]"
open_bracket = "["
close_bracket = "]"
string_without_brackets = remove_brackets(string_with_brackets, open_bracket, close_bracket)
print(string_without_brackets)
Выход:
USA offers opportunities for diverse lifestyles
Представлено составное изображение, демонстрирующее как код Python, так и его вывод в Visual.

С помощью метода translate()
Мы также можем создать таблицу перевода с помощью str.maketrans() в Python и удалить скобки из строки с помощью str.translate().
Поскольку метод str.translate() в Python обеспечивает высокую производительность при работе с большими строками.
Вот простой пример:
def remove_brackets(string, open_bracket, close_bracket):
table = str.maketrans('', '', open_bracket + close_bracket)
return string.translate(table)
string_with_brackets = "USA's cities {pulsate} with vibrant {energy}."
open_bracket = "{"
close_bracket = "}"
string_without_brackets = remove_brackets(string_with_brackets, open_bracket, close_bracket)
print(string_without_brackets)
Выход:
USA's cities pulsate with vibrant energy.
Прилагается снимок, показывающий сценарий Python и полученный результат в Visual Studio.

Заключение
Таким образом, мы рассмотрели пять методов удаления скобок из строки в Python. Эти методы включают в себя использование метода replace(), методов соединения и фильтрации, понимание списка с помощью join(), регулярных выражений и метода Translate().
Каждый метод предлагает свои преимущества. В зависимости от конкретных требований нашей задачи и размера наших данных мы можем выбрать наиболее подходящий метод очистки текстовых данных.