Python str ()

La función str () devuelve la versión de cadena del objeto dado.

La sintaxis de str()es:

 str (objeto, codificación = 'utf-8', errores = 'estricto')

str () Parámetros

El str() método toma tres parámetros:

  • objeto : objectcuya representación de cadena se devolverá. Si no se proporciona, devuelve la cadena vacía
  • encoding : codificación del objeto dado. Valores predeterminados de UTF-8 cuando no se proporciona.
  • errores : respuesta cuando falla la decodificación. Por defecto es 'strict'.

Hay seis tipos de errors:

  • estricto : respuesta predeterminada que genera una UnicodeDecodeErrorexcepción en caso de falla
  • ignorar : ignora el Unicode no codificable del resultado
  • reemplazar : reemplaza el Unicode no codificable por un signo de interrogación
  • xmlcharrefreplace : inserta una referencia de carácter XML en lugar de Unicode no codificable
  • backslashreplace - inserta una uNNNNsecuencia de espacio en lugar de Unicode no codificable
  • namereplace : inserta una N(… )secuencia de escape en lugar de Unicode no codificable

Valor de retorno de str ()

El str()método devuelve una cadena, que se considera una representación informal o agradablemente imprimible del objeto dado.

Ejemplo 1: convertir a cadena

Si no se proporciona el parámetro de codificación y errores , str()internamente llama al __str__()método de un objeto.

Si no puede encontrar el __str__()método, en su lugar llama a repr (obj).

 result = str(10) print(result)

Salida

 10 

Nota: La variable de resultado contendrá una cadena.

Pruebe también estos comandos en la consola de Python.

 >>> str ('Adán')
 >>> str (b'Python! ')

Ejemplo 2: ¿Cómo funciona str () para bytes?

Si encodingy errorsestá provisto de parámetros, el primer parámetro, objeto , debe ser un bytes-como-objeto (bytes o bytearray).

Si el objeto es bytes o bytearray , str()llama internamente bytes.decode(encoding, errors).

De lo contrario, obtiene el objeto bytes en el búfer antes de llamar al decode()método.

 # bytes b = bytes('pythön', encoding='utf-8') print(str(b, encoding='ascii', errors='ignore')) 

Salida

 Pythn 

Aquí, el carácter 'ö'no puede ser descodificado por ASCII. Por tanto, debería dar un error. Sin embargo, hemos establecido el errors ='ignore'. Por lo tanto, Python ignora el carácter que no puede decodificar str().

Articulos interesantes...