Как убрать пробелы в питоне при выводе
Перейти к содержимому

Как убрать пробелы в питоне при выводе

  • автор:

Как убрать пробел после name?

@evgenik, при выполнении кода из вопроса пробел перед восклицательными знаком будет в любом случае добавляться, поэтому ваш совет не работает.

26 янв 2020 в 21:02

4 ответа 4

Сортировка: Сброс на вариант по умолчанию

Можно поступить так:

name = input() print('Hello, <>!'.format(name)) 
print('Hello, ' + name + '!') 
print(f'Hello, !') 
print('Hello, %s!' % name) 

Отслеживать
ответ дан 2 сен 2017 в 17:20
Pavel Durmanov Pavel Durmanov
5,756 3 3 золотых знака 23 23 серебряных знака 44 44 бронзовых знака
Ну тогда уж и про sep=» напиши 🙂
2 сен 2017 в 17:22
@diraria Тут в этом нет смысла. Больше толку от этого при распаковке.
2 сен 2017 в 17:23
Добавь тогда и форматирование через % , раз format упомянул 🙂
2 сен 2017 в 17:25

@diraria, например print(*’123′) и print(*’123′, sep=’, ‘) , тоже самое можно и для, к примеру, списков применить

2 сен 2017 в 17:29

стоит упомянуть какой из вариантов является более предпочтительным (это не очевидно). Если формат в виде константы известен как в этом случае, то f’Hello, !’ наиболее ясный (и вероятно самый эффективный) вариант. Поддерживается в Python 3.6+ Остальные варианты менее читаемы: ‘Hello, <>!’.format(name) . Если больше одного имени или не строковая переменная, то ‘Hello, ‘ + name + ‘!’ ещё хуже. Вариант с %s может иметь проблемы если name это кортеж (из-за бага к примеру иногда), и на Питоне 2 были ещё более тонкие отличия от ».format() кода (неявные преобразования unistr ).

Как удалить пробелы из строки в Python

Есть несколько способов удалить пробелы из строки в Python. Python String неизменяем, поэтому мы не можем изменить его значение. Любая функция, которая управляет строковым значением, возвращает новую строку, и мы должны явно назначить ее строке, иначе строковое значение не изменится.

Допустим, у нас есть пример строки, определенной как:

s = ' Hello World From Pankaj \t\n\r\tHi There '

Эта строка имеет разные типы пробелов, а также символы новой строки.

Давайте посмотрим на различные функции для удаления пробелов.

strip()

Строковая функция strip() удаляет начальные и конечные пробелы.

>>> s.strip() 'Hello World From Pankaj \t\n\r\tHi There'

Если вы хотите удалить только начальные или конечные пробелы, используйте вместо них функцию lstrip() или rstrip().

replace()

Мы можем использовать replace(), чтобы удалить все пробелы из строки. Эта функция также удалит пробелы между словами.

>>> s.replace(" ", "") 'HelloWorldFromPankaj\t\n\r\tHiThere'

join() с split()

Если вы хотите избавиться от всех повторяющихся пробелов и символов новой строки, вы можете использовать функцию join() с функцией string split().

>>> " ".join(s.split()) 'Hello World From Pankaj Hi There'

translate()

Если вы хотите избавиться от всех пробелов, а также от символов новой строки, вы можете использовать строковую функцию translate().

>>> import string >>> s.translate() 'HelloWorldFromPankajHiThere'

Удаление пробелов из строки в python

Python удаляет пробелы из строки с помощью Regex

Мы также можем использовать регулярное выражение для поиска пробелов и их удаления с помощью функции re.sub().

import re s = ' Hello World From Pankaj \t\n\r\tHi There ' print('Remove all spaces using RegEx:\n', re.sub(r"\s+", "", s), sep='') # \s matches all white spaces print('Remove leading spaces using RegEx:\n', re.sub(r"^\s+", "", s), sep='') # ^ matches start print('Remove trailing spaces using RegEx:\n', re.sub(r"\s+$", "", s), sep='') # $ matches end print('Remove leading and trailing spaces using RegEx:\n', re.sub(r"^\s+|\s+$", "", s), sep='') # | for OR condition
Remove all spaces using RegEx: HelloWorldFromPankajHiThere Remove leading spaces using RegEx: Hello World From Pankaj Hi There Remove trailing spaces using RegEx: Hello World From Pankaj Hi There Remove leading and trailing spaces using RegEx: Hello World From Pankaj Hi There

Помогите. Python как убрать пробелы при выводе?

Капитан Гугл Искусственный Интеллект (146191) Это и есть «по-проще». Можешь вместо запятых ставить + и вокруг чисел str: str(a)+’+’+str(b). Можешь использовать старый стиль форматирования: «%d+%d»%(a,b) Но этот — самый понятный: в строку вместо фигурных скобок подставляется параметр метода format.

Илья ДанилинМастер (1536) 6 лет назад
Поставь в принте sep=» (руказывает чем разделять элементы)
Илья Данилин Мастер (1536) там две одинарные кавычки

## python 3
## f-строки

Как убрать пробел в строке print в Питон?

Как убрать пробел между словом и восклицательным знаком? В коде пробела нет.

Заранее спасибо, всегда выбираю Ответ-решение.

  • Вопрос задан более двух лет назад
  • 24230 просмотров

1 комментарий

Простой 1 комментарий

ramzis

Запятая делает пробел
Решения вопроса 4

SladkayaDoza

Владислав Мухин @SladkayaDoza
Обучаюсь программированию

name = input("Как вас зовут? ") print(f'Привет, !')

Ответ написан более двух лет назад
Комментировать
Нравится 6 Комментировать
lil.fxrrx @mxrdxfxrrx
flstudio20, py3.x
Можно так и не заморачиваться

name = input("Как вас зовут? ") print("Привет, "+name+"!")

Ответ написан более двух лет назад
Нравится 3 2 комментария
todoman @todoman Автор вопроса
Спасибо. Пока не знаю, что за плюсы по сторонам от имени.
lil.fxrrx @mxrdxfxrrx

todoman, эти плюсы могут добавлять содержимое переменной
почти тоже самое что и ваше print(«Привет,», name,»!»), но сейчас оно выглядит получше и может распространяться на больший круг строк

ramzis

FullStackOverflow
Лучше учись сразу делать так

print(f'Hello !') print('Hello !'.format(name))

Ответ написан более двух лет назад
Нравится 2 4 комментария
lil.fxrrx @mxrdxfxrrx
очень запарно
todoman @todoman Автор вопроса
Попробовал, спасибо.
Но почувствовал, что прыгнул через несколько ступенек – неизвестные операторы.

ramzis

todoman,
todoman,
тут все просто), один раз посмотрел и запомнил

age = 10 name = 'Мишша' print(f'Я , мне лет')

Как дойдешь до темы форматирования строк, там наверно объяснять почему лучше так не делать
print(«Привет, «+name+»!»)

lil.fxrrx @mxrdxfxrrx

Рамис, видно же что человек только начал изучать пайтон, ему еще до форматирования строк далековато, а вот этот пример со вставкой переменной будет более проще для него

Vindicar

А если нужно именно убрать вставку пробела между выводимыми значениями, то делаешь так:
print(‘Привет,’, name, ‘!’, sep=»)
При этом sep может быть любой строкой, например:
print(‘Привет,’, name, ‘!’, sep=’::’)
выведет «Привет. Вася. «

Аналогично есть параметр end, который указывает, что print() выведет после всех значений. По умолчанию это «\n» — переход на следующую строку, но можно указать end=», и тогда курсор останется на той же строке.

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

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