Определение когда print() перестает писать Python
Всем привет! У меня появился вопрос по поводу print() в Python. Для одной фичи мне нужно реализовать функцию, где нужно будет определить когда перестанет в консоль писать значение. Можете пожалуйста подсказать. Максимум до чего я додумался это:
eyes2 = cv2.rectangle(img, (x+ex, y+ey), (x+ex + ew, y+ey + eh), (255, 0, 0), 2) # тут выдает значение, а я его компилирую yes
if eyes2.any():
success2221 = "yes"
success222 = print(success2221)
if 'yes' in success222:
print('Есть такой текст')
if 'no' in success222:
print('Нет такого текста')
Помогите мне пожалуйста!
Ответы (1 шт):
Я наконец то понял вопрос. Проблема в том, что print() возвращает None
print() всегда возвращает None в любом случае
success2221 = "yes"
success222 = print( success2221 ) # тут выводится yes
print( success222 ) # тут печатается None
Есть функции которые возвращают значение, например, квадратный корень, а есть функции, которые никогда ничего не возвращают в качестве результата ( они просто что-то выполняют и ничего не возвращают ). Если вы сделаете свою функцию и ничего не вернете в качестве result, то Python сам неявно добавит в код result = None. Точно так же и в функции print() написано, что result = None
Поэтому не зависимо от того, что делает print() её результат
print( print( '' ) ) всегда будет None