Перейти к содержимому

Как убрать табуляцию в python

  • автор:

Как убрать из строки \t?

Используй метод replace(), который заменит все табуляции на пробелы:

a = a.replace("\t", " ") 

более подробно про этот метод можешь почитать здесь.

А еще то же самое можно сделать с помощью регулярных выражений:

import re s = "The \t fox jumped \t over \t the log." s = re.sub("\s+", " ", s) print s 

Отслеживать
ответ дан 9 дек 2016 в 12:37
Lex Hobbit Lex Hobbit
4,296 1 1 золотой знак 19 19 серебряных знаков 35 35 бронзовых знаков
a = a.replace(«\t», » «) — 3 пробела подряд получится
9 дек 2016 в 13:11

@slippyk верно, но в вопросе не было сказано, убрать или не убирать повторяющиеся \t, а в итоговой строке не понятно, сколько у автора пробелов. И я в ответе написал, что просто меняет все табы на пробелы, что говорит о точном количественном совпадении. Я предоставил альтернативы, а автор вопроса уже сам решит, что ему больше подходит =)

Как быстро удалить знак табуляции сразу у нескольких строк?

А вот если Tab заменяется на набор пробелов, то нужно как-то выцеплять начало.
А в чём эти строки показаны?

Зеленый ОгаревецГуру (3702) 8 лет назад

Полосатый жираф Алик Искусственный Интеллект (312851) Хо! Там же просто выделить нужные строки и Shift+Tab. И всё.

Привет мальчики
Похожие вопросы
Ваш браузер устарел

Мы постоянно добавляем новый функционал в основной интерфейс проекта. К сожалению, старые браузеры не в состоянии качественно работать с современными программными продуктами. Для корректной работы используйте последние версии браузеров Chrome, Mozilla Firefox, Opera, Microsoft Edge или установите браузер Atom.

Python-блог

Поскольку использование табуляции (код ASCII 9) обычно вызывает всякие проблемы с кодом, используйте хорошее правило:

1) Никогда не используйте табуляцию

1. 1) Единственное исключение: ваш код использует именно её для своих целей (единственный пример, приходящий мне на ум — Makefile)

Причины не использовать табуляцию
  • В зависимости от наследственности, разные редакторы по разному трактуют табуляцию. UNIXовые редакторы отображают табуляцию как 8 пробелов, а Windowsовые и различные IDE (Eclipse) – как 4.
  • Не всегда может быть достигнуто согласие по длине табуляции между различными текстовыми редакторами и различными людьми.
  • По этой причине использование табуляции может сделать исходный код нечитабельным и затруднить его сопровождение, если над ним работает более одного человека. Вы редактировали его в одном редакторе, ваш товарищ – в другом, и когда Вы снова его открываете – Вы видите мешанину текста с абстрактными отступами.
  • Ещё хуже дело обстоит с языками, которые строго относятся к пробелам (Python, CoffeeScript), так как такая неразбериха может привести к логическим или синтаксическим ошибкам.

И всех этих проблем Вы можете избежать если просто будете использовать вместо табуляций пробелы.

Даже если Вы единственный, кто редактирует код, Вы можете в какой-то момент поменять текстовый редактор и свернуть себе шею.

Использовать пробелы вместо табуляций не будет проблемой потому что…
  • Все текстовые редакторы могут на лету преобразовывать табуляцию в пробелы при редактировании файлов. Если какой-то из распространённых редакторов (кроме блокнота) этого не делает – сообщите мне!
  • Обычно текстовые редакторы содержат настройки для длины табуляции и отступов. Вот последнее-то Вы и можете спокойно поменять.
Псевдо-аргументы за использование табуляций

Улыбка

  • Это сокращает размер файла – а Вас действительно беспокоят несколько байт на вашем терабайтовом диске?
  • Да беспокоит, потому что мой файл скачивают из сети! – если Вас это и правда волнует, то в первую очередь оптимизацию размера надо делать в другом месте.
  • Мне они нравятся… – не обосновано
  • Люди не любят изменений

У Вас, конечно, может быть уже какой-то проект со своими традициями оформления кода. Если он имеет достаточный размер, например, как у ядра Linux, поменять оформление может быть не так легко. Но даже в этом случае Вы можете постепенно избавляться от табуляций.

Рекомендации по оформлению кода
  • Python рекомендует не использовать табуляцию
  • PHP рекомендует не использовать табуляцию
  • Java рекомендует не использовать табуляцию
  • CSS рекомендует не использовать табуляцию
  • и т.д.
Текстовые редакторы

Если Вы автор текстового редактора, убедитесь что по умолчанию у него отключена табуляция, особенно для языков, чувствительных к отступам, если ваш редактор реагирует на языки

  • Все текстовые редакторы не использовали табуляцию по умолчанию
  • Все текстовые редакторы трактовали бы табуляцию как 8 пробелов

Но кто-то когда-то решил сделать нашу жизнь чуть сложнее.

Не могу убрать табуляцию из результатов парсинга

Всем привет. Не могу убрать табуляцию из результата парсинга сайта. Пробовал разное, (сейчас это закомментировано в коде), всегда ошибка одного вида:
temp1 = temp.replace(‘ ‘, »)
TypeError: ‘NoneType’ object is not callable

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
from bs4 import BeautifulSoup import requests #import re url = "https://www.stroimbaniu.ru/catalog/kotly_otopitelnye/kotly_amteo/kotyel_a_15_amteo/" response = requests.get(url) print(response) bs = BeautifulSoup(response.text,"lxml") print(bs) temp = bs.find('div', "product-item-detail-price-current") #temp1 = re.sub(' ', '', temp) temp1 = temp.replace(' ', '') print(temp1.text) #temp1 = int(''.join(temp.split())) #print(temp1)

Что можно с этим сделать?
Лучшие ответы ( 1 )
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
Ответы с готовыми решениями:

Убрать табуляцию в тексте
Задача такова. Я в TEdit ввожу текст в несколько строк, который содержит табуляцию. Надо програмно.

Как убрать табуляцию из текста
Что и где в эту программу надо добавить или убрать что бы она заменяла табуляцию на пробел

Как убрать табуляцию в редакторе C#?
Ссылка удалена. Загружайте вложения на форум

Обработка результатов парсинга (HtmlParser)
Добрый день! Сразу оговорюсь, что я начинающий и могу использовать иногда неправильную.

Запись результатов парсинга в CSV файл
Начал изучать парсинг сайтов на Python. Могу спарсить данные и вывести их на экран. В окне.

Am I evil? Yes, I am!

Эксперт PythonЭксперт Java

16119 / 9755 / 2730
Регистрация: 21.10.2017
Сообщений: 21,624

Лучший ответ

Сообщение было отмечено wold как решение

Решение

temp1 = temp.text.replace('\t', '') print(temp1)

Добавить комментарий

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