Привет! Я пытаюсь отправить данные о непрерывной температуре с моего Raspberry Pi 3 на ПК, используя TCP-сокеты с Python.Я не могу отправить значения с плавающей запятой, я отправляю непрерывный поток значений с плавающей запятой в строковом формате и хочу преобразовать все эти значения в типы с плавающей запятой.
Я получаю такие ошибки:
"ValueError: could not convert string to float '25.69'.
Вот мой код сервера (работает на Raspberry Pi), я включил только определенные части:
def dataTransfer(conn):
# A big loop that sends/receives data until told not to.
while True:
reply = GET_OBJ_TEMP()
reply = str(reply)
#conn.sendall(str.encode(reply)) # don't have to encode/decode, I think it's only for Python 3
conn.sendall(reply)
print("Data has been sent!")
#conn.close()
s = setupServer()
conn = setupConnection()
dataTransfer(conn)
А вот код клиента (на ПК):
import socket
host = '10.0.0.94'
port = 5560
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.connect((host, port))
#while True:
#s.send(str.encode(command))
reply = s.recv(1024)
#print(reply.decode('utf-8'))
#reply2 = reply.decode('utf-8')
reply2 = (repr(reply))
reply2 = float(reply2)
print reply2
print type(reply2)
s.close()
Может ли кто-нибудь помочь мне получить эти значения в виде числа с плавающей запятой или помочь мне напрямую отправить числа с плавающей точкой, они мне нужны, чтобы я мог использовать температурув качестве порогового значения.