图像堆叠python

2024-04-20 04:42:35 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个程序,需要排序10.ppm文件,平均每行三种颜色(红,绿,蓝),并返回到一个文件中,以创建最终的图像。现在,在第一个for循环开始后,在第11行给我一个错误,说index error list assignment index out of range。图像文件以PPM格式存储。文本文件的结构如下: 第一行包含字符串P3。 第二行包含两个整数,以像素表示图像的宽度和高度。我们称之为w和h。 第三行包含一个整数,它告诉每个像素的红色、蓝色和绿色分量的颜色值的最大值。对于此分配,最大值始终为255。 文件的其余部分由w×h行组成。每一行包含三个整数,代表单个像素的红、蓝、绿分量。这就是我目前所拥有的一切,任何帮助都会很好。谢谢!在

def imageStacker():
userInput = input('What is the name of the image set you would like to process?: ')
#fileName = str(userInput) + '_'
print(type(userInput))
fileRef = []
content = []
for i in range(10):
    fileRef[i] = open(userInput + '_' + str(i +1) + '.ppm', 'r')

for i in range(10):
    content[i] = fileRef[i].readlines()

print(list(content))

Tags: 文件of图像forindex颜色range整数
1条回答
网友
1楼 · 发布于 2024-04-20 04:42:35

您正试图分配给列表的元素,但列表已定义为空

fileRef[i] = ...

其中i是0,1,2…,但fileref是[]。在

也许你想要fileref.append( ... )?这会使列表随着您的添加而增长。这同样适用于下一个循环。使用列表理解可以更简洁地编写这篇文章-请查阅lists和{a2}的基本操作以获得更多信息。在

相关问题 更多 >