Python – создание строки с помощью большого количества конкатенаций строк – какой метод следует использовать? ⇐ Python

Программы на Python
Anonymous
Python – создание строки с помощью большого количества конкатенаций строк – какой метод следует использовать?

Сообщение Anonymous »

Во-первых. В настоящее время я работаю с Python 3.12.
Я работаю над процессом, который считывает большой объем текста (посимвольно) и создает строку из символов, выбранных в определенных условия. Процесс, который я предпринял, заключается в объявлении пустой строки, а затем переборе текста (с использованием простого цикла for) и объединении, когда символ должен использоваться.
Для иллюстрации я пусть тело текста будет одной строкой (

Код: Выделить всё

body_of_text
), т. е.

Код: Выделить всё

final_text : str = ""

for index in range(body_of_text):
if use_character(body_of_text[index]):
str += body_of_text[index]

У меня вопрос: неэффективно ли это с точки зрения вычислений? и если да, то есть ли лучший подход в Python? Я спрашиваю, как и в случае с неизменяемыми строками в Python, что каждый раз, когда я вызываю конкатенацию (в моем понимании - пожалуйста, исправьте, если ошибаюсь), я создаю временный объект String со значением str + body_of_text[index], уничтожая предыдущий объект str, а затем создать новый объект String str со значением временного объекта String. Учитывая, что добавление str при каждом выборе с помощью use_character() является простым символом, это, похоже, требует большого объема вычислительной работы, которую нужно повторять (я обрабатываю ОЧЕНЬ большие текстовые корпуса)
Правильны ли мои рассуждения? и если да, то какие еще методы следует использовать? Основная мысль заключалась в том, чтобы создать упорядоченный список, в который я добавляю каждый выбранный символ, а затем в конце обработки body_of_text использую метод join().
Буду очень признателен за любые идеи и/или поправки к моей интерпретации!

Подробнее здесь: https://stackoverflow.com/questions/790 ... ation-what

Вернуться в «Python»