0

I wrote a method computing Robert Haralick image features (using Mahotas package) on .tif medical images in the working directory. I receive the print output in a column like:

567657657
788979877
787879787

I need to convert it to the horizontal row appearance like: 1789789 8909888 898098098 and, if possible, append the name of the processed file before that row of output (like: imagename 7897987 90890898...). Here is the code:

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')
4

2 回答 2

1

Python 2.x 版本在 print 语句后自动换行,但您可以使用 a 阻止它执行此操作,(并,获得自动空格)。

在您的代码中,只需使用单行(没有明确的\n):

print "%i" %z,

(我假设您使用 2.x 版本来访问用于医学图像处理的完整科学堆栈,但如果您不是,请提及。)

于 2013-08-24T15:36:41.453 回答
0

我没有使用 Python 的经验;但是,如果您的意思是在控制台或文件或其他任何内容上连续打印相同的数字,则只需不打印 \n\r 字符而是用例如制表符 \t 或逗号','替换它们,

于 2013-08-24T10:37:49.280 回答