Уведомления

Группа в Telegram: @pythonsu

#1 Дек. 10, 2016 03:16:29

alexswsw
Зарегистрирован: 2016-12-05
Сообщения: 14
Репутация: +  0  -
Профиль   Отправить e-mail  

строки

здравствуйте. подскажите как я могу удалить лишние пробелы в строке допустим. ‘d ’ должно быть на выходе ‘d’ знаю что фор нада использоваль можно объяснить как это сделать самым простым для понимания образом

Офлайн

#2 Дек. 10, 2016 08:31:29

ZerG
Зарегистрирован: 2012-04-05
Сообщения: 2627
Репутация: +  61  -
Профиль   Отправить e-mail  

строки

a.replace(' ‘, ’')



Влодение рускай арфаграфией - это как владение кунг-фу: настаящие мастира не преминяют ево бес ниабхадимости

Офлайн

#3 Дек. 10, 2016 08:35:57

scidam
Зарегистрирован: 2016-06-15
Сообщения: 288
Репутация: +  35  -
Профиль   Отправить e-mail  

строки

Используйте регулярные выражения:

 import re
space_pat = re.compile(r'\s{2,}')
print(space_pat.sub(' ','This string  inсludes extra  spaces'))

Офлайн

#4 Дек. 11, 2016 14:04:57

MickeyMouse
Зарегистрирован: 2016-11-16
Сообщения: 14
Репутация: +  0  -
Профиль   Отправить e-mail  

строки

если только в начале и конце

 s = input()
print(s.strip())

Отредактировано MickeyMouse (Дек. 11, 2016 14:06:36)

Офлайн

#5 Дек. 11, 2016 14:14:22

Romissevd
От: Счастье
Зарегистрирован: 2015-03-01
Сообщения: 533
Репутация: +  76  -
Профиль   Отправить e-mail  

строки

 a = input('Enter string')
print((' ').join(word for word in a.split(' ') if word != ''))

Офлайн

#6 Дек. 11, 2016 15:26:48

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 10016
Репутация: +  857  -
Профиль   Отправить e-mail  

строки

  
>>> s = '  abc  def  ghi  '
>>> out = ' '.join(s.split())
>>> out
'abc def ghi'
>>>



Офлайн

#7 Дек. 12, 2016 02:31:22

alexswsw
Зарегистрирован: 2016-12-05
Сообщения: 14
Репутация: +  0  -
Профиль   Отправить e-mail  

строки

спасибо
я так понял еще можно сделать так

 b="  bb        ".strip()
print(b)
подскажите еще вот с такой задачей
Дан список имён (например ). Необходимо вывести список в удобочитаемом виде:
Bart, Lisa & Maggie.
То есть после каждого имени выводить запятую, кроме предпоследнего. После предпоследнего имени нужно выводить символ “&”, а после последнего - точку.

Пример:
-> “A, B, C & D.”
я знаю что можно по индексам все сделать.
но нужно сделать чтоб работало при разном количестве элементов в списке

Офлайн

#8 Дек. 12, 2016 07:32:46

old_monty
Зарегистрирован: 2015-09-27
Сообщения: 238
Репутация: +  20  -
Профиль   Отправить e-mail  

строки

alexswsw
Будет работать при любом количестве элементов в списке больше > 1:

 >>>beatles = ["John", "Paul", "Ringo", "George"]
>>> s = ", ".join(beatles[:-1]) + " & " + beatles[-1] + "."
>>> print(s)
John, Paul, Ringo & George.
>>> 
Fishhook
Спасибо за замечание. Вырожденные случаи списка из 1 элемента тоже, конечно, могут встречаться

Отредактировано old_monty (Дек. 12, 2016 07:47:26)

Офлайн

#9 Дек. 12, 2016 07:41:05

FishHook
От:
Зарегистрирован: 2011-01-08
Сообщения: 8312
Репутация: +  568  -
Профиль   Отправить e-mail  

строки

old_monty

 beatles = ["John"]



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version