elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Usando Git para manipular el directorio de trabajo, el índice y commits (segunda parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Scripting
| | |-+  [Aporte - Python] Programa Chars-ASCII
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: [Aporte - Python] Programa Chars-ASCII  (Leído 6,311 veces)
Príncipe_Azul

Desconectado Desconectado

Mensajes: 21


while (1):


Ver Perfil WWW
[Aporte - Python] Programa Chars-ASCII
« en: 28 Marzo 2014, 05:41 am »

Hola a todos!!

Bueno hoy voy a aportar un programa bastante útil que les servirá si desean saber el código ASCII de algún caracter, ya sea letra, número o símbolo, esto es muy útil porque muchas veces necesitamos trabajar con chrs.
El programa es sencillo, lo ejecutan y escriben un texto, número o símbolo, puede ser el largo que quieran, por ejemplo una frase.
También pueden ir los caracteres mezclados (letras, números, símbolos).
Aquí dejo un ejemplo de su uso:

Código:
Escribi un texto o letra: hola amigos
 h 104
 o 111
 l 108
 a 97
   32
 a 97
 m 109
 i 105
 g 103
 o 111
 s 115

Escribi un texto o letra: ¿Como estan?
 ¿ 168
 C 67
 o 111
 m 109
 o 111
   32
 e 101
 s 115
 t 116
 a 97
 n 110
 ? 63

Escribi un texto o letra: Nos vemos, suerte!
 N 78
 o 111
 s 115
   32
 v 118
 e 101
 m 109
 o 111
 s 115
 , 44
   32
 s 115
 u 117
 e 101
 r 114
 t 116
 e 101
 ! 33

Lo que dice "Escribi un texto o letra:" es el mensaje del programa, lo que está después de ese mensaje es lo que deben escribir y lo que está a la izquierda son los caracteres de la frase que escribieron y a la derecha su código ASCII!!!!
Por las dudas, el código ASCII del espacio (hecho con la barra espaciadora) es el char 32.

Aquí está el código:

Código
  1. # -*- coding: utf-8 -*-
  2. # Programa Chars-ASCII - Creado con Python 2.7.5
  3. # Autor: Daniel Delgado - Nick:(Príncipe_Azul)
  4.  
  5. def Caracteres():
  6.    Cadena = raw_input("\nEscribi un texto o letra: ")
  7.    if "salir!!" != Cadena:
  8.        for Caracter in enumerate(Cadena):
  9.            print " " + Caracter[1], ord(Caracter[1])
  10.        Caracteres()
  11.    else:
  12.        exit()
  13.  
  14. Caracteres()

El programa tiene un bucle en la misma función que no se lo ve (aparte del for), osea no se lo ve como for ni while, pero es un bucle que siempe llama a su misma función, esto lo hice así para no tener que estar abriendo el programa a cada rato.
Para salir del programa, osea para que la consola se cierre, deben escribir el comando:

salir!!

en minúsculas y con los 2 signos de exclamción al final.

Aquí pueden ver el mismo ejemplo pero en modo gráfico desde la consola:

http://subefotos.com/ver/?899445f659f853aa380ba9b5dbfaecf0o.jpg

Espero que les sirva.
Hasta luego.


En línea

Foro de Ayuda de Programación General, IRC y mIRC Scripting: 
nalu4

Desconectado Desconectado

Mensajes: 2


Ver Perfil
Re: [Aporte - Python] Programa Chars-ASCII
« Respuesta #1 en: 8 Diciembre 2018, 15:28 pm »

... 4 años y 9 meses después...

Mismo programa con pequeñas variantes pero en python 3.6  ;D .


Código
  1. def caracteres():
  2.    cadena = input('Escriba un texto o letra: ')
  3.    if 'salir' !=  cadena:
  4.        for caracter in enumerate(cadena):
  5.            print ('' + caracter[1], ord(caracter[1]))
  6.        caracteres()
  7.  
  8.    else:
  9.        print('hasta pronto ;)')
  10.  
  11. print ('Programa que muestra el valor ASCII de un caracter o caracteres que tu me das.')
  12. print ('Para terminar escriba \"salir\".')
  13.  
  14. caracteres()



« Última modificación: 8 Diciembre 2018, 15:32 pm por nalu4 » En línea

tincopasan


Desconectado Desconectado

Mensajes: 1.286

No es lo mismo conocer el camino que recorrerlo.


Ver Perfil
Re: [Aporte - Python] Programa Chars-ASCII
« Respuesta #2 en: 9 Diciembre 2018, 01:33 am »

bueno ya que reabris este post
Código
  1.    def caracteres():
  2.        cadena = input('Escriba un texto o letra: ')
  3.        if 'salir' !=  cadena:
  4.            for caracter in enumerate(cadena):             #¿qué sentido tiene usar enumerate?
  5.                print ('' + caracter[1], ord(caracter[1]))   # escribes de más en vez de buscar lo simple
  6.            caracteres()                                              #¿qué tiene de malo usar while?      
  7.  
  8.        else:
  9.            print('hasta pronto ;)')
  10.  
  11.    print ('Programa que muestra el valor ASCII de un caracter o caracteres que tu me das.')
  12.    print ('Para terminar escriba \"salir\".')               #usar dos print para líneas consecutivas ???
  13.                                                                           #¿para qué \?  sino es necesario  
  14.    caracteres()
  15.  

lo mismo:

Código
  1. def caracteres():
  2.    cadena = input('Escriba un texto o letra: ').lower()  #por las dudas ingresen alguna mayúsculas
  3.    while cadena != "salir":
  4.        for caracter in cadena:
  5.            print (caracter, ord(caracter))
  6.        cadena = input('Escriba un texto o letra: ').lower()
  7.  
  8. print ('''Programa que muestra el valor ASCII de un caracter o caracteres que tu me das
  9.             Para terminar escriba "salir"  ''')
  10. caracteres()
  11. print('hasta pronto ;)')
  12.  
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
[Python] ¿?convertir ascii a hex en python¿?
Scripting
nacho87 5 13,882 Último mensaje 26 Febrero 2009, 23:16 pm
por Novlucker
[Python] Ascii To Hex y Hex to Ascii
Scripting
Runex 0 3,315 Último mensaje 8 Abril 2012, 15:09 pm
por Runex
[Aporte] Herramienta para transformar a ascii web
Programación C/C++
DaniekL 2 2,202 Último mensaje 20 Junio 2013, 03:14 am
por leosansan
[Aporte] ASCII Format « 1 2 »
.NET (C#, VB.NET, ASP)
TMarmol 11 7,348 Último mensaje 8 Enero 2014, 21:45 pm
por Eleкtro
[BATCH] [Aporte] Folder Locker & ASCII ART
Scripting
M401 1 2,306 Último mensaje 21 Julio 2020, 00:39 am
por .:Xx4NG3LxX:.
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines