@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"
  • Вопрос задан
  • 300 просмотров
Пригласить эксперта
Ответы на вопрос 2
LaRN
@LaRN
Senior Developer
Выведите в консоль переменную data. После split в первом элементе может содержаться строка, которую нельзя сконвертировали во float.

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

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

Войти через центр авторизации
Похожие вопросы
25 окт. 2024, в 22:20
3000 руб./за проект
25 окт. 2024, в 21:46
7500 руб./за проект
25 окт. 2024, в 21:45
2000 руб./в час