Convertir cadena a valor ASCII en Python

Subodh Adhikari 30 enero 2023
  1. Utilice el bucle for junto con la función ord() para obtener ASCII de una cadena en Python
  2. Utilice la comprensión de lista y la función ord() para obtener ASCII de una cadena en Python
  3. Utilice una función definida por el usuario to_ascii() para obtener ASCII de una cadena en Python
Convertir cadena a valor ASCII en Python

Este tutorial presentará algunos métodos para convertir una cadena en valores ASCII en Python.

Utilice el bucle for junto con la función ord() para obtener ASCII de una cadena en Python

Podemos usar el bucle for y la función ord() para obtener el valor ASCII de la cadena. La función ord() devuelve el Unicode de la cadena pasada. Acepta 1 como la longitud de la cadena. Un bucle for se utiliza para iterar sobre una secuencia: una lista, una tupla, un diccionario, un conjunto o una cadena. Por lo tanto, podemos usar el bucle for para analizar cada carácter de la cadena y convertirlo en valores ASCII.

En el código siguiente, text es una variable que contiene la entrada del usuario. ascii_values es una lista vacía inicialmente, que contendrá los valores ASCII de cada carácter en la cadena más adelante. Una vez que el bucle ha completado su bucle, mostraremos el contenido de ascii_values como salida para el usuario. La función append() agrega un nuevo elemento a la lista ascii_values después de cada iteración.

Cuando ejecutamos este programa, se le solicita al usuario una cadena, y una vez que el usuario proporciona una cadena, se almacenará en una variable text. En el ejemplo, la entrada es la cadena hello. Se imprime el valor ASCII de cada carácter de la cadena.

Código de ejemplo:

# python 3.x
text = input("enter a string to convert into ascii values:")
ascii_values = []
for character in text:
    ascii_values.append(ord(character))
print(ascii_values)

Producción :

enter a string to convert into ASCII values: hello
[104, 101, 108, 108, 111]

Utilice la comprensión de lista y la función ord() para obtener ASCII de una cadena en Python

Podemos usar la comprensión de la lista para lograr el mismo resultado. La comprensión de listas en Python es una sintaxis fácil y compacta para crear una lista a partir de una cadena u otra lista. Es una forma concisa de crear una nueva lista operando en cada elemento de la lista existente. La comprensión de la lista es considerablemente más rápida que el procesamiento de una lista mediante el bucle for a.

En el código siguiente, no hay bucle for o while externamente. Pero dentro de la comprensión de la lista, estamos usando for loop para obtener cada character del text.

Código de ejemplo:

# python 3.x
text = input("enter a string to convert into ascii values: ")
ascii_values = [ord(character) for character in text]
print(ascii_values)

Producción :

enter a string to convert into ASCII values: hello
[104, 101, 108, 108, 111]

Utilice una función definida por el usuario to_ascii() para obtener ASCII de una cadena en Python

Otra forma de escribir el código para lograr el mismo objetivo es utilizar una función definida por el usuario. Las funciones definidas por el usuario son funciones que utiliza para organizar su código en el cuerpo de una política. Una vez que defina una función, puede llamarla de forma similar a las funciones integradas de acción y analizador. Las variables que se pasan a una función se pasan por referencia en lugar de por valor.

En el código siguiente, usamos una función definida por el usuario to_ascii para tomar text como parámetro. Dentro de la función, se define la operación del bloque y el resultado se transfiere mediante la palabra clave return. Cuando se llama a la función to_ascii desde el módulo principal proporcionando text como transferencias de control de parámetros a la función to_ascii y se ejecuta el bloque de código, obtenemos los valores ASCII de la cadena dada en una lista.

Código de ejemplo:

# python 3.x
def to_ascii(text):
    ascii_values = [ord(character) for character in text]
    return ascii_values


text = input("Enter a string: ")
print(to_ascii(text))

Producción :

Enter a string:
hello
[104, 101, 108, 108, 111]

Artículo relacionado - Python ASCII

Artículo relacionado - Python String