>>>r=png.Reader(file=in_file)
>>>r.read()
>>>l=list(_[2])
我真的不明白最后一行,任何人都可以解释这是做什么的吗?我可以看到,这会将png数据与列表l
联系起来,但我对细节并不十分清楚。我真正想要做的是将它包含在python脚本中,我尝试将其复制到我的脚本中,但它在此行失败,返回
NameError: name '_' is not defined
再次,如果有人能够解释发生了什么以及如何调整它,以便它可以在一个非常有用的脚本中工作。
答案 0 :(得分:5)
在交互式解释器中,_
是最后一个语句的结果 - 在本例中是r.read()
调用的返回值。这显然不适用于脚本,因为它只在python控制台中可用。只需将返回值分配给其他变量并使用它。
答案 1 :(得分:0)
尝试此操作可能有助于您了解r.read()中的数据。在上面的代码中,变量“_”未在脚本中定义(在控制台中可用,如上所述)。如果您有reader_list [2],您将获得列表中的第三个条目。
import png
r = png.Reader('png_file.png')
reader_list = list(r.read())
for element in reader_list :
print(element)
输出:
997
520
<itertools.imap object at 0xb725aa8c>
{'bitdepth': 8, 'interlace': 0, 'planes': 4, 'greyscale': False, 'alpha': True, 'gamma': 0.45455, 'size': (997, 520)}
另请查看文档http://pythonhosted.org/pypng/index.html。希望这会有所帮助。