Как переставить вывод на печать в Python из столбца в строку?
Я написал метод вычисления функций изображений Роберта Харалика (используя пакет Mahotas) на медицинских изображениях.tif в рабочем каталоге. Я получаю вывод на печать в столбце вроде:
567657657
788979877
787879787
Мне нужно преобразовать его в горизонтальный ряд, например: 1789789 8909888 898098098
и, если возможно, добавьте имя обработанного файла перед строкой вывода (например: imagename 7897987 90890898...
). Вот код:
def haralick(self):
for filename in glob.iglob ('*.tif'):
imgg = mahotas.imread (filename)
cancertwo = mahotas.features.haralick (imgg)
arr = numpy.array([cancertwo])
for x in arr:
for y in arr:
for h in y:
for z in h:
print '%f' %z
print('\n')
2 ответа
Версии Python 2.x выполняют автоматический перевод строки после оператора print, но вы можете помешать ему сделать это с помощью ,
(и с ,
вы получаете автоматический пробел).
В вашем коде просто используйте одну строку (без явного \n
):
print "%i" %z,
(Я предполагаю, что вы используете версию 2.x для доступа к полному научному стеку для обработки медицинских изображений, но, пожалуйста, укажите это, если это не так.)
У меня нет опыта работы с Python; Однако, если вы хотите напечатать одинаковые числа, следующие за консолью, файлом или чем-то еще, это будет просто вопрос не печати символа \n\r, а замены их, например, табуляцией \t или запятой ',',