viernes, 13 de abril de 2012


#!/usr/bin/env python
# -*- coding: UTF-8 -*-
class Compilador:
def __init__(self):
codigo=None
ruta_fichero = raw_input("Ingrese Ruta Completa de fichero: ")
try:
fichero = open(ruta_fichero,'r')
except:
print "Ruta Invalida"
exit()
self.caracteres="abcdefghijklmnñopqrstuvwxyz,.:0123456789() \n_"
self.palabras = ['imprimir','funcion','intente','excepcion','mientras','bucle','y','si','de_lo_contrario','romper','importar']
error=0
for lineas in fichero.readlines():
for cod in lineas:
if cod.lower() not in self.caracteres.lower():
print "Error Caracter no valido "+str(cod)
error+=1
for palabra in lineas.split(' '):
if palabra.replace('\n','') not in self.palabras:
print "Error palabra no valido "+palabra.replace('\n','')
error+=1
if error:
print str(error)+" Numero de Errores"
else:
print "No hay errores"
Compilador()


Este es el nuevo codigo, que valida las palabras,
Hubo un cambio, ahora no ingresa codigo por codigo, o lineas por lineas, como en el anterior codigo, si no que se ingresa la ruta del fichero que se quiere validar.

viernes, 30 de marzo de 2012

Este es el codigo python, para comparar caracteres:



#!/usr/bin/env python
# -*- coding: UTF-8 -*-
class Compilador:
def __init__(self):
codigo=None
while codigo != "salir":
self.caracteres="abcdefghijklmnñopqrstuvwxyz,;.:0123456789() "
codigo=raw_input("ingrese codigo: ")
error=0
for cod in codigo:
if cod not in self.caracteres:
print "Error Caracter no valido "+str(cod)
error+=1
if error:
print str(error)+" Numero de Errores"
Compilador()
La idea es desarrollar, unas pequeñas traducciones de código python, a español, por lo que en primera medida, se compilara los elementos, es decir, los caracteres validos, en el codigo fuente del programa