python - create - dataframes
¿Cómo puedo crear valores de bytes de enteros en Python? (2)
Use la función incorporada chr()
.
Si tiene una lista de dichos enteros que necesita enviar, puede considerar el uso de un bytearray()
.
Alternativamente, en las versiones más nuevas de Python puede simplemente usar un tipo de byte
.
Fondo: necesito enviar un valor numérico como un byte a un dispositivo externo, pero me he encontrado con un problema. Mi código es:
ser=serial.Serial("COM3",9600, timeout=0)
ser.write(value)
donde "valor" es un int que he leído. El problema es que cuando envío esto, envía el valor del carácter, no el valor real (envía el valor de byte 31 para el número 5, ya que esa es la posición de unicode, creo)
En realidad, quiero poder enviarle el caracter "/ x05" por ejemplo. Supongo que mi pregunta es, ¿cómo convertir e int 5 a un char "/ x05", o 37 a "/ x37"
puedes usar esto ...
bytes(chr(my_int)) # not strictly correct unless 0<=my_int<=255
bytes((my_int,))