我尝试使用覆盆子的ubidots,但我需要使用asyncio lib,但是当我尝试运行我的代码时,在python 3支持这一点,在导入ubidots lib时给我一个错误。这就是为什么我的问题。
我想知道是否有办法将ubidots导入Python 3.我知道我可以在覆盆子中使用ubidots,问题是我不能在同一代码中使用这两个库,因为ubidots在python 2.7中运行和asyncio在3中,所以我想知道在python 3中是否有某种方法可以使用ubidots。
我的代码是:
#import las librerias
import serial
import time
import asyncio
from ubidots import ApiClient
#verificaci
print("Inicio del programa")
#subir el token
api = ApiClient(token ='A1E-ZJIXh7Gfi6vixFUAxtZXioRG0j2Lp6')
print("Token ok")
#subir las key de las variables
voltage1 = api.get_variable('5a8497d4c03f9726abf2c977')
print("Variables OK")
#update with port for Arduino
ser = serial.Serial('/dev/ttyACM0', 9600)
print("Arduino OK")
async def ciclo():
while True:
ser.flushInput() #Reset buffer
read_serial = ser.readline()
voltage1Reading = float(read_serial) #convert to float
new_value = voltage1.save_value({'value': voltage1Reading})
print(read_serial)
await asyncio.sleep(0.0111)
time.sleep(10)
它给我的错误
答案 0 :(得分:0)
是的,Ubidots库可以毫无问题地使用Python 3和asyncio。
您得到的错误是因为您没有在Python 3软件包中安装ubidots软件包,而是在Python 2软件包中安装。因此,要在您的设备中成功使用Ubidots包,您应该执行以下命令:pip3 install ubidots
。