Я использую терминальную команду в своем коде Python с использованием подпроцессов, я пытаюсь проверить функцию connect (), чтобы проверить, что возвращает функция, и посмотреть, содержится ли что-то внутри нее.Моя функция current возвращает оба следующих значения в зависимости от результата работы пластин:
(b'No license plates found.\n', None)
Plate Not Found
(b'plate0: 10 results\n - SBG984\t confidence: 85.7017\n -
SBG98\t confidence: 83.3453\n - S8G984\t confidence: 78.3329\n -
5BG984\t confidence: 76.6761\n - S8G98\t confidence: 75.9766\n -
SDG984\t confidence: 75.5532\n - 5BG98\t confidence: 74.3198\n -
SG984\t confidence: 73.3743\n - SDG98\t confidence: 73.1969\n -
BG984\t confidence: 71.7671\n', None) Plate Not Found
Код следующий:
def read_plate():
alpr_out = alpr_subprocess().communicate()
print(alpr_out)
if "No license plates found." in alpr_out:
print ("No results!")
elif "SBG984" in alpr_out:
print ("Found Plate")
else:
print("Plate Not Found")
Как вы можете сказать из этого кода, он долженпечать "Нет результатов!"но вместо этого он печатает «Plate Not Found», если функция возвращает табличку SBG984, код все равно вернет «No results!».Я предполагаю, что упускаю что-то простое и, возможно, кто-то может заметить это.