error en python3

Iniciado por oculto, Marzo 22, 2020, 07:19:10 PM

Tema anterior - Siguiente tema

0 Miembros y 1 Visitante están viendo este tema.

¿alguien sabe por que me da este error en python3 al intentar conectar con el cliente?

TypeError: a bytes-like object is required, not 'str'

Marzo 22, 2020, 08:46:26 PM #1 Ultima modificación: Marzo 22, 2020, 10:27:10 PM por DtxdF
Cita de: No tienes permitido ver los links. Registrarse o Entrar a mi cuenta

CitarLas cadenas originales básicas de Python 2 se denominan cadenas de 8 bits y desempeñan un doble papel en Python 2 como texto ASCII y como secuencias de bytes. Si bien Python 2 también tiene un tipo de cadena unicode, la ambigüedad fundamental del tipo de cadena central, junto con el comportamiento predeterminado de Python 2 de admitir la coerción automática de cadenas de 8 bits a objetos unicode cuando los dos se combinan, a menudo conduce a UnicodeErrors. El tipo de cadena estándar de Python 3 está basado en Unicode, y Python 3 agrega un tipo de bytes dedicado, pero críticamente, no se proporciona coerción automática entre bytes y cadenas unicode. Lo más cerca que se acerca el lenguaje a la coerción implícita son algunas API basadas en texto que asumen una codificación predeterminada (generalmente UTF-8) si no se establece explícitamente ninguna codificación. Por lo tanto, el intérprete central, sus bibliotecas de E / S, los nombres de los módulos, etc. son claros en su distinción entre cadenas unicode y bytes. El soporte unicode de Python 3 incluso se extiende al sistema de archivos, por lo que los nombres de archivos que no son ASCII son compatibles de forma nativa.

Esta claridad de cadena / bytes es a menudo una fuente de dificultad para la transición del código existente a Python 3, porque muchas bibliotecas y aplicaciones de terceros son ambiguas en esta distinción. Sin embargo, una vez migrados, la mayoría de los UnicodeErrors pueden eliminarse.

Por lo tanto hay muchas librerías que quitan el problema de la ambigüedad de python 2 con la codificación de carácteres en la versión 3. Su problema no demuestra mucha explicación así que lo que diga puede ser por suposiciones anexas a problemas que yo haya tenido en el pasado.

Puede ser porque esté abriendo un documento cómo texto en vez de bytes; que use una librería que requiera datos tipo bytes y un largo etc. Si quiere una respuesta más precisa deje un poco más información de lo qué está haciendo.

~ DtxdF
~ DtxdF