字符串比较在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

这是相同的字符串,我需要比较,但在执行过程中,我在控制台上没有问题

+0

请分享一些输入... – BeerBaron

+0

你介意给出一个示例输出吗? – Eduard

+0

尝试打印'repr(文本)'并查看是否有任何意外。 – khelwood

事实证明,您的字符串最后有新行(\n\n)。

您可以使用

text = text.strip() 

从您的字符串中删除周围的任何空白。