字符串比较在Python中不起作用
问题描述:
我正在写一个与tesseract-ocr一起工作的脚本,我从屏幕获取文本,然后我需要将它与字符串进行比较。问题是,即使我确定字符串是相同的,比较失败,我怎么能使我的代码工作?字符串比较在Python中不起作用
这里我的代码:
import pyscreenshot as pss
import time
from pytesser import image_to_string
buy=str("VENDI")
buyNow=str("VENDI ADESSO")
if __name__ == '__main__':
while 1:
c=0
time.sleep(2)
image=pss.grab(bbox=(1104,422,(1104+206),(422+30)))
text = str(image_to_string(im))
print text
if text==buy or text==buyNow:
print 'ok'
例如输入: Input image sample
而且作为输出我得到:
VENDI ADESSO
这是相同的字符串,我需要比较,但在执行过程中,我在控制台上没有问题
答
事实证明,您的字符串最后有新行(\n\n
)。
您可以使用
text = text.strip()
从您的字符串中删除周围的任何空白。
请分享一些输入... – BeerBaron
你介意给出一个示例输出吗? – Eduard
尝试打印'repr(文本)'并查看是否有任何意外。 – khelwood