字符串比较在 python 中不起作用
String comparison does not work in python
我正在编写与 tesseract-ocr
一起使用的脚本。我从屏幕上获取文本,然后我需要将它与字符串进行比较。问题是即使我确定字符串相同,比较也会失败。
我怎样才能让我的代码工作?
这是我的代码:
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'
例如作为输入:
作为输出我得到:
VENDI ADESSO
哪个是我需要比较的同一个字符串,但是在执行过程中我没有在控制台上得到 ok
?
事实证明,您的字符串末尾有换行符 (\n\n
)。
您可以使用
text = text.strip()
从字符串中删除周围的任何空格。
我正在编写与 tesseract-ocr
一起使用的脚本。我从屏幕上获取文本,然后我需要将它与字符串进行比较。问题是即使我确定字符串相同,比较也会失败。
我怎样才能让我的代码工作?
这是我的代码:
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'
例如作为输入:
作为输出我得到:
VENDI ADESSO
哪个是我需要比较的同一个字符串,但是在执行过程中我没有在控制台上得到 ok
?
事实证明,您的字符串末尾有换行符 (\n\n
)。
您可以使用
text = text.strip()
从字符串中删除周围的任何空格。