Форум сайта python.su
0
Как отформатировать длинную строку выводимую оператором print? Нужно выводить по 40 символов и делать отступ слева на 15-символов.
Хочу достичь такого результата:
>>> long_string = 'xxxxxx xxxx xxxxxx xxxxxx xxxxxxxxxxx xx xxxxxx xxxx xxx xxxx' >>> print 'Начало прозы: ' + long_string Начало прозы: xxxxxx xxxx xxxxxx xxxxxx xxxxxxxxxxx xx xxxxx xx xxx xxxx xxxxxx xxxxxx xxxx xxx xx xx xxx x xxxxxx xxxx xxxxxx xxxxxx xxxxxxxxxxx xx xxxxx xxxxxx xxxx xxxxxx xxxxxx xxxxxxxxxxx xx xxxxx xxxxxx xxxx xxxxxx xxxxxx xxxxxxxxxxx xx xxxxx >>>
Отредактировано tfox (Авг. 21, 2012 09:30:46)
Офлайн
75
import textwrap print "Начало прозы: " + ("\n" + " "*40).join(textwrap.wrap(dd,width=40))
print "Проза " + ("\n" + " "*40).join([dd[x:x+40] for x in range(len(dd)/40)])
Отредактировано Singularity (Авг. 21, 2012 11:14:41)
Офлайн
17
Singularityrange был криво задан
А это почему то не сработало
print "Проза " + ("\n" + " "*40).join([dd[x:x+40] for x in range(0,len(dd),40)])
Офлайн
75
agalen ,
dd[x:x+40] #лучше задавать как dd[x*40:(x+1)*40] #ибо на range(0,0) # оно упадет
Офлайн
0
спасибо
Офлайн