Уведомления

Группа в Telegram: @pythonsu

#1 Фев. 10, 2015 22:27:31

val2015
Зарегистрирован: 2015-02-10
Сообщения: 6
Репутация: +  0  -
Профиль   Отправить e-mail  

Помогите новичку

Твой вариант прикольный удали плиз ответ.

Офлайн

#2 Фев. 10, 2015 22:30:12

terabayt
От: Киев
Зарегистрирован: 2011-11-26
Сообщения: 1099
Репутация: +  103  -
Профиль   Отправить e-mail  

Помогите новичку

val2015
Твой вариант прикольный удали плиз ответ.
ахах, удалил



————————————————
-*- Simple is better than complex -*-

Офлайн

#3 Фев. 11, 2015 03:04:59

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

Помогите новичку

Писал тут группировщик.

>>> def f(seq, n):
...     assert n > 0
...     lst, x = [], 0
...     for i in seq:
...         lst.append(i)
...         x += 1
...         if x == n:
...             yield lst
...             lst, x = [], 0
...     if lst:
...         yield lst
... 
>>> s = "Здравствуйте меня зовут Андрей"
>>> 
>>> ' '.join(map(''.join, f(s.replace(' ', ''), 7)))
'Здравст вуйтеме нязовут Андрей'
>>>



Отредактировано py.user.next (Фев. 11, 2015 03:05:10)

Офлайн

#4 Фев. 24, 2015 01:49:41

Paranoia_Agent
Зарегистрирован: 2014-06-25
Сообщения: 75
Репутация: +  5  -
Профиль   Отправить e-mail  

Помогите новичку

А я думал, что в строках можно не следить за количеством элементов в последовательности?

s = "Здравствуйте меня зовут Андрей"
piece = 7
' '.join([s.replace(' ', '')[x * piece : (x + 1) * piece] for x in range(int(len(s) / piece))])

Отредактировано Paranoia_Agent (Фев. 24, 2015 01:50:32)

Офлайн

#5 Фев. 24, 2015 23:20:26

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

Помогите новичку

Paranoia_Agent
А я думал, что в строках можно не следить за количеством элементов в последовательности?
>>> s = "Здравствуйте меня зовут Андрейxx"
>>> piece = 7
>>> ' '.join([s.replace(' ', '')[x * piece : (x + 1) * piece] for x in range(int(len(s) / piece))])
'Здравст вуйтеме нязовут Андрейx'
>>>



Отредактировано py.user.next (Фев. 24, 2015 23:21:55)

Офлайн

#6 Фев. 25, 2015 02:42:21

pyuser
От:
Зарегистрирован: 2007-05-13
Сообщения: 658
Репутация: +  36  -
Профиль   Отправить e-mail  

Помогите новичку

from itertools import zip_longest
s = "Здравствуйте меня зовут Андрей"
" ".join(map("".join, zip_longest(*[iter("".join(s.split()))] * 7, fillvalue="x")))



Офлайн

#7 Фев. 25, 2015 03:00:07

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

Помогите новичку

pyuser
fillvalue="x"

>>> s = "Здравствуйте меня зовут Андрей"
>>> " ".join(map("".join, zip_longest(*[iter("".join(s.split()))] * 7, fillvalue="x")))
'Здравст вуйтеме нязовут Андрейx'
>>>

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



Офлайн

Board footer

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

Powered by DjangoBB

Lo-Fi Version