Присвоение значения базы данных переменной Python

#python #mysql #raspberry-pi #mariadb

#python #mysql #raspberry-pi #mariadb

Вопрос:

Создание простого скрипта, который извлекает последнее значение из базы данных и отправляет по HTTP GET адресату

однако, когда я использую «mycursor.fetchone()» Я получаю возвращенное значение «»(Десятичное (‘21.00’),)»

Я что-то упускаю? Я хотел бы просто извлечь необработанное значение

Фрагмент кода:

 mycursor.execute("SELECT RAINFALL FROM WATHER_MEASUREMENT")
rainfall = mycursor.fetchone()

#create a URL variable 
 URL='https://*****'
 PARAMS = "temp={temperature}amp;pressure={pressure}amp;rh={humidity}amp;precip={rainfall}".format(**vars())

requests.get(url = URL, params = PARAMS)
  

Комментарии:

1. Какой тип значений содержится в базе данных? Какого результата вы ожидаете? Чем оно отличается от того, которое вы получили?

2. Извините, я не понял. Все это целочисленные значения, я хотел бы извлечь целое число и передать его через переменную в HTTP-запрос

Ответ №1:

fetchone возвращает значение dict not

добавьте это после второй строки:

 rainfall = rainfall['RAINFALL']
  

Комментарии:

1. хорошо, как в. осадки = mycursor. fetchone(), за которым следует rainfall = rainfall[‘ОСАДКИ’]

2. или используйте rainfall[0]