Форум сайта python.su
привет.
есть необходимость выводить в stdout строку после нужного кол-ва пробелов. реализовал это тупо с использованием цикла. но это через*опное решение.
подскажите как это сделать правильно?
и такой же вопрос касательно строк. как выводить в строку после нужного кол-ва пробелов?
спасибо.
Офлайн
In [6]: n = 10
In [7]: s = "test"
In [8]: "%s%s" % (' '*n, s)
Out[8]: ' test'
Офлайн
print ' ' * 10, 'string'
Офлайн
print '{:>10}'.format('string')
Отредактировано (Ноя. 10, 2011 10:29:47)
Офлайн
Используйте rjust:
>>> q='qwe'
>>> q.rjust(10,'.')
'.......qwe'
Офлайн
всем благодарен.
Офлайн
PooH, скажите, для python-3.2 как ваш способ записать нужно?
записал так:
sys.stdout.write("%s%s".format(" " * tab, name))
Офлайн
>>> s = 'abc'
>>> print ' ' * 10 + s
abc
>>>
>>> import sys
>>> sys.stdout.write(' ' * 10 + s)
abc>>>
pupkin2неправильно используешь .format()
что тут не правильно?
Отредактировано (Ноя. 11, 2011 02:55:55)
Офлайн
неправильно используешь .format()спасибо. это я отлично понял. но вопрос как бэ намекал на пояснение ;)
Офлайн
>>> '%s%s'
'%s%s'
>>> '%s%s' % (1, 2)
'12'
>>>
Офлайн