如何在pbm文件中的每两个像素之间留出空间(ASCII模式)

时间:2016-11-30 17:14:06

标签: python file readfile writefile pbm

我在ASCII模式下有一个 test.pbm 文件,其中包含如下代码:

P1
# Comment
9 9
000000000
011000000
011000000
011000000
011000000
011000010
011111110
011111110
000000000   

我想创建一个新文件“newFile.pbm”,它将包含每两个像素之间的空格。如下所示:

P1
# Comment
9 9
0 0 0 0 0 0 0 0 0
0 1 1 0 0 0 0 0 0
0 1 1 0 0 0 0 0 0
0 1 1 0 0 0 0 0 0
0 1 1 0 0 0 0 0 0
0 1 1 0 0 0 0 1 0
0 1 1 1 1 1 1 1 0
0 1 1 1 1 1 1 1 0
0 0 0 0 0 0 0 0 0 

我尝试使用以下代码打开文件“test.pbm”来完成工作,但我遇到了很多问题,首先,它在打开.pbm时显示'IOError:无法识别图像文件',其次,不能在每两个像素之间留出空间。其实我是Python新手。我的Linux Mint 17.3 cinamon 32bit和Python2.7.6。请帮助。我试过的代码如下:

fo=open("test.pbm",'r')  
columnSize, rowSize=fo.size
x=fo.readlines()
fn = open("newfile.pbm","w") 
for i in range(columnSize):
     for j in range(rowSize):
      fn.write(x[i][j])
fn.close()

1 个答案:

答案 0 :(得分:0)

你可以这样做:

?