繁体   English   中英

我是 python 新手,在打印列表元素时遇到问题

[英]I am new to python and am having trouble printing an element of a list

结果如下所示:

[([[17, 11], [57, 11], [57, 61], [17, 61]], '2', 1.0)]

我只想打印 2(列表的第二个元素?)但不断收到“列表索引超出范围”错误。

这是我试图用来打印列表元素的代码:

print (result[1][0])

完整的代码片段:

number = 1
sresult = ''
reader = easyocr.Reader(['en'])
for number in range (1,82):
    result = reader.readtext(datadrop+ str(number)+'.png')
    print (result[1][0])
    sresult = str(result) +sresult
print (sresult)

该列表中只有一个元组( [(...)] ),因此访问result[1][0]将给出IndexError 您可以通过将代码更改为此来解决 -

number = 1
sresult = ''
reader = easyocr.Reader(['en'])
for number in range (1,82):
    result = reader.readtext(datadrop+ str(number)+'.png')
    print (result[0][1][0])
    sresult = str(result) +sresult
print (sresult)

我假设您想访问元组中的第二项。

这有效:

number = 1
sresult = ''
reader = easyocr.Reader(['en'])
for number in range (1,82):
    result = reader.readtext(datadrop+ str(number)+'.png')
    if len(result) != 0:
        print (result[0][1][0])
    sresult = str(result) +sresult
print (sresult)

我必须添加一种方法来处理空结果并使用 sr0812 的 [0][1][0] 解决方案

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM