robot_chickn
Июнь 3, 2013 21:12:42
Вопрос в следующем, через telnet получаю данные с GPS модуля, из строчки вырезаю широту и долготу, сохраняю это в переменные. Если пробую вывести одну переменную: print lan , то все выводится корректно, а как только начинаю с ней работать (математические действия), то выдает ошибку.
Например: lat1 = lat + 1
Ошибка:
TypeError: cannot concatenate ‘unicode’ and ‘float’ objects in <script> at line number 75
Как можно это исправить?? Может все таки нужно как то стринговую переменную в флоат перевести?
Заранее спасибо!
admyn
Июнь 3, 2013 23:07:27
Вы сохраняете данные как int, float или str?
robot_chickn
Июнь 4, 2013 09:45:11
наверно глупый вопрос, но как это сделать?
я вытаскиваю из потока данных нужную строчку, а потом делаю так:
values = line.split(',')
if values == ‘$GPRMC’:
Lan = values
Lat = values
break
после этого пытаюсь работать с Lan. и выдает ошибку. как мне сохранить данные правильно??
FishHook
Июнь 4, 2013 09:50:41
какой тип values Вы надеетесь получить?
robot_chickn
Июнь 4, 2013 10:00:27
я получаю строчки из слов и цифровых данных, вот пример:
$GPRMC,161229.487,A,3723.2475,N,12158.3416,W,0.13,309.62,120598,,*10
отбираю нужную мне, по первому слову (GPRMC). дальше беру только числовые данные и мне нужно их потом использовать в расчетах.
robot_chickn
Июнь 4, 2013 10:03:38
извиняюсь, код скопировался как то не правильно.
data = tn.read_until("*")
lines = data.split("\n")
for line in lines:
values = line.split(',')
if values(0) == '$GPRMC':
StartLan = values(3)
StartLat = values(5)
break
квадратные скобки исчезают почему то. написал в круглых
FishHook
Июнь 4, 2013 10:10:28
robot_chickn
квадратные скобки исчезают почему то. написал в круглых
потому что код нужно оформлять в теги
robot_chickn
Июнь 4, 2013 10:12:28
понял, спасибо, как посоветуете решить данную проблему??
FishHook
Июнь 4, 2013 10:14:05
>>>я получаю строчки из слов и цифровых данных,
s="$GPRMC,161229.487,A,3723.2475,N,12158.3416,W,0.13,309.62,120598,,*10"
print s.split(",")
['$GPRMC', '161229.487', 'A', '3723.2475', 'N', '12158.3416', 'W', '0.13', '309.62', '120598', '', '*10']
Покажите пальцем, где здесь “цифровые данные”
robot_chickn
Июнь 4, 2013 10:18:04
4я и 6я ячейки нужны мне, а точнее 3723.2475 и 12158.3416
мне нужно их сохранить как числовые переменные.