python-tesseract - Pytesseract 输出到列表中然后拆分并出现错误
问题描述
我正在尝试将pytesseract
输出放入列表中,然后将其拆分,但我无法使其正常工作。
不工作的代码部分:
mylist = []
mylist = [pytesseract.image_to_string(Image.open('test.png'))]
print(mylist)
list2 = mylist.split()
print(list2)
我得到的输出是:
['33 44 55\n\x0c'] list2 = mylist.split( ) AttributeError: 'list' object has no attribute 'split'
解决方案
问题是您想在对象上使用字符串的 ( str
)split
函数list
。
让我们一步一步解释
mylist = []
您不需要声明mylist
为 empty list
,因为
mylist = [pytesseract.image_to_string(Image.open('test.png'))]
你已经声明了。但是如果你想使用split
,那么你需要在mylist
没有括号的情况下声明。
mylist = pytesseract.image_to_string(Image.open('test.png'))
现在,如果您检查mylist
类型
print(type(mylist))
结果应该是:
<class 'str'>
根据文档,您需要提供输入参数。例如:
list2 = mylist.split("\n")
print(list2)
mylist
根据"\n"
字符拆分。因此正确的实现将是:
mylist = pytesseract.image_to_string(Image.open('test.png'))
print(mylist)
list2 = mylist.split()
print(list2)
推荐阅读
- sql - 如何显示来自同一用户的 2 分钟或更短时间的事件?
- wpf - 使用存储在 ResourceDictionary 中的 Brush
- c# - 使用实体框架将 Datagridview 行插入数据库
- scala - 用 Map 中给出的值填充 DataFrame
- loops - 使用 bcftools 和 awk 在多种文件类型上运行循环以细分文件
- wildfly - 崩溃后可以设置 WildFly 18 以自动重启 JVM 吗?
- docusignapi - DocuSign C# SDK:调用 ListStatusChanges 时出错:操作已超时
- oracle - 如何在 AWS 上安装 redhat-release 包
- python - 根据 Lomb-Scargle 分析的数据重建信号
- spring - 带有通用通配符的 bean 的 Spring 注入