Как сделать так, чтобы функция принимала вывод другой функции в качестве входных данных и процесса?

#python #python-3.x #serial-port

Вопрос:

  1. Я работал над связью по последовательному порту на «Python».
  2. Модуль, который я использовал, таков serial .
  3. И я получаю данные по адресу COM17 , Baudrate=115200

Это требование заключается в:

  1. Я получаю данные, COM port и этот процесс находится в функции 1 с именем serial_port()
  2. Затем я использую вывод serial_port() для создания условия для печати yes или no в функции 2 с именем process()
  3. Использовали резьбу.

Проблема, с которой я сталкиваюсь:

  1. Я не могу получить вывод из serial_port() , чтобы использовать его в process()

Код, который я использовал, это:

 from serial import Serial
import serial
import threading
from win10toast import ToastNotifier

n = ToastNotifier()

try:
    s1=serial.Serial("COM17",115200)
except :
    n.show_toast("Serial port already in use", "From  project", duration = 10)
    s1.close()

def serial_port():
    while True:
        s=s1.read(10).hex()
        print(s[0:20])

def process():     
    #print(serial_port())
    while True:
       if serial_port().s=='fa0000000000000000fb':
           print("yes")
       else:
           print("no")

t1=threading.Thread(serial_port())
t2=threading.Thread(process())
t1.start()
t2.start()