@samurai229

Странная ошибка с float в python?

Вот код
import sys
import pyautogui as pag
import time 
import serial

ArduinoSerial=serial.Serial('com3',9600)
time.sleep(1)

while 1:
   data=str(ArduinoSerial.readline())
   (x,y,z)=data.split(":")
   (X,Y)=pag.position()
   x=float(x)
   y=float(y)
   pag.moveTo(X+x,Y-y)
   if '1' in z:
      pag.click(button="left")

А вот ошибка
Traceback (most recent call last):
  File "c:\Users\Admin\Desktop\Mouse_Joystick.py", line 13, in <module>
    x=float(x)
      ^^^^^^^^
ValueError: could not convert string to float: "b'50"
  • Вопрос задан
  • 209 просмотров
Пригласить эксперта
Ответы на вопрос 2
LaRN
@LaRN
Senior Developer
Выведите в консоль переменную data. После split в первом элементе может содержаться строка, которую нельзя сконвертировали во float.

Если вам нужно убрать все не числовые символы из строки, то вот тут рецепты:
https://stackoverflow.com/questions/947776/strip-a...
Ответ написан
Комментировать
Lord_of_Rings
@Lord_of_Rings
Python developer
Ничего странного нет. Просто надо выбросить из строки всё лишнее
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы