Форум сайта python.su
А чем мой вариант не устроил? Он вроде покороче.
Кстати, ваш вариант мою усовершенствованную строку преобразует в это:
“A Привет форумчане, рад и вас всех видетьнаэтом форуме.”, то есть он склеил вот это: “видетьнаэтом” в одно слово.
Офлайн
Ed, красавчик, научи Т__т'
У меня вечно какая-нибудь красивая функция погрязает в тонне проверок, которые я пишу будто бы впервые сел за питон после какого-нибудь паскаля. А у тебя так четко все вышло… кароче *ЗАВИСТЬ*
Отредактировано (Янв. 8, 2010 02:41:19)
Офлайн
Отдельная тема для завистников Ed должа быть :)) (со шлюхами и блек-джеком(с) - Бендер)
Отредактировано (Янв. 8, 2010 03:03:09)
Офлайн
Ха! Сделал версию Eda, тока чуть покороче, чисто поржать =D. Заодно открыл для себя, как можно применять условия в лямбдах!
line = u"A привет ф о р у м ч а н е , рад и вас всех в и д е т ь на э т о м форуме."
line = "".join(map(lambda w: " %s " % w if len(w) > 1 else w, line.split())).replace(" ", " ").strip()
Офлайн
а по производительности отличается значительно ?
Офлайн
pasaranaxПо количеству строк оно может и короче, но вот по наглядности и понятности сильно уступает)
Ха! Сделал версию Eda, тока чуть покороче, чисто поржать =D. Заодно открыл для себя, как можно применять условия в лямбдах!line = u"A привет ф о р у м ч а н е , рад и вас всех в и д е т ь на э т о м форуме."
line = "".join(map(lambda w: " %s " % w if len(w) > 1 else w, line.split())).replace(" ", " ").strip()
Офлайн
ZubchickДа все очень просто. У меня есть волшебное оружие - алгоритм решения проблем Фейнмана:
Ed, красавчик, научи Т__т'
Офлайн
pasaranax: как вам такой вариант?
print "".join([s.center(len(s)+(len(s) > 1)*2) for s in line.split()]).replace(" ", " ").strip()
Отредактировано (Янв. 8, 2010 12:25:42)
Офлайн
EdThe Zen of Python: Flat is better than nested.
как вам такой вариант?
Офлайн
ZZZРечь идет об однострочниках - pasaranax и моем. Я не понимаю какой из них более flat или nested.
The Zen of Python: Flat is better than nested.
Офлайн