Что найти?

Замена нескольких пробелов одним в текстовом файле Python

/
/

Есть много способов заменить несколько пробелов одним в Python, например, с помощью модуля разделения строк или регулярного выражения. Мы рассмотрим каждый из них с примерами.

Метод 1: использование разделенной строки

  1. Прочтите входной текстовый файл в режиме чтения и выходной файл в режиме записи.
  2. Для каждой строки, прочитанной из входного файла:
    1. Разделите данную строку с помощью метода split(). По умолчанию этот метод разделяется пробелом в качестве разделителя. Когда есть несколько пробелов, эти разделения игнорируются, и, следовательно, мы получим отдельные слова.
    2. Соедините разбиения, используя единственное пространство â € ˜ â € ˜.
    3. Запишите в выходной файл.
  3. Закройте файлы ввода и вывода.

Пример

В следующем примере мы заменим несколько пробелов одним.

fin = open("data.txt", "rt")
fout = open("out.txt", "wt")

for line in fin:
	fout.write(' '.join(line.split()))
	
fin.close()
fout.close()

Входной файл:

Welcome to      www.pythonexamples.org. Here, you will     find python programs              for all        general use cases.

Выходной файл:

Welcome to www.pythonexamples.org. Here, you will find python programs for all general use cases.

Все несколько пробелов в текстовом файле заменяются одним пробелом.

Метод 2: использование регулярного выражения

Вы также можете использовать регулярное выражение, чтобы найти несколько непрерывных пробелов и заменить их одним пробелом:

  1. Импортировать re модуль для регулярного выражения.
  2. Прочтите входной текстовый файл в режиме чтения и выходной – в режиме записи.
  3. Для каждой строки, прочитанной из текстового файла, используйте метод re.sub(), который заменяет строку другой строкой в предоставленном тексте.
  4. Закройте файлы ввода и вывода.

Пример

В следующем примере мы заменим несколько пробелов одним пробелом с помощью модуля re.

import re

fin = open("data.txt", "rt")
fout = open("out.txt", "wt")

for line in fin:
	fout.write(re.sub('\s+',' ',line))
	
fin.close()
fout.close()

В этом руководстве примеров в Python мы узнали способы замены нескольких символов пробела одним пробелом, используя разные подходы и примеры программ для каждого из них.

Оставить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

This div height required for enabling the sticky sidebar