Задать вопрос
@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"
  • Вопрос задан
  • 360 просмотров
Подписаться 1 Простой 3 комментария
Помогут разобраться в теме Все курсы
  • Нетология
    Python-разработчик: расширенный курс + нейросети
    12 месяцев
    Далее
  • Академия Эдюсон
    Python-разработчик
    9 месяцев
    Далее
  • ProductStar × РБК
    Профессия: Python-разработчик + ИИ
    8 месяцев
    Далее
Пригласить эксперта
Ответы на вопрос 2
LaRN
@LaRN
Senior Developer
Выведите в консоль переменную data. После split в первом элементе может содержаться строка, которую нельзя сконвертировали во float.

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

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

Похожие вопросы
ITK academy Краснодар
от 220 000 до 300 000 ₽
ITK academy Краснодар
от 75 000 ₽
DimaTech Ltd Краснодар
от 140 000 до 140 000 ₽