Código
import os filepath = input("Ruta del archivo: ") archivo = open(filepath, "r", encoding = 'utf-8') # Abre el archivo con codificado UTF-8 for linea in archivo.readlines(): if "$$" in linea: # $$ Indica que hay un comentario pass elif "add" in linea: # "add" Indica que los proximos numeros que esten entre comillas simples seran sumados arreglo = linea.split('"') arreglo2 = linea.split('"') # print(arreglo[1]) # print(arreglo2[1]) num1 = arreglo[1] num2 = arreglo2[1] int(num1) int(num2) total = float(num1) + float(num2) print(total) elif "clrscr()" in linea: os.system('cls') elif "int" in linea: # "int" Indica que es una variable de tipo entero varName = linea.split('"') # Nombre de la variable varValue = linea.split('|') # Valor de la variable print(varName[1]) print(varValue[1]) elif "putsln" in linea: # putsln Indica que se imprimira un texto putslnFunction = linea.split('"') printedText = putslnFunction[1] if printedText == varName[1]: # <== NO FUNCIONA print(varValue[1]) elif printedText == '': print("is null!") else: print(printedText) archivo.close() print("Code execution finished.") os.system('pause')
Bueno, practicamente seria un """""lenguaje de programación""""" (notese la cantidad de comillas) que cree, para escribir código en este """""lenguaje de programación""""" , se hace en un fichero
con extensión .ocl, aunque le puedes poner cualquier extension...
Ejemplo:
Código:
$$Este es un comentario
putsln "áéíóú ÁÉÍÓÚ äëïöü àèìòù"
putsln "Ñandú!"
add "5" "5"
int "variable" |8|
putsln "variable"
La funcion "add" suma numeros
La función "putsln" imprime texto en pantalla
La función int, es para variables, funciono, hasta que intente que se pueda imprimir variables con la función "putsln"
Como dije anteriormente, ahi empeze a tener problemas, ya que me aparecia que la variable varName (que es el nombre a la variable) y varValue (que es el valor de la variable) no estaban definidas, pero si lo están.
PD: en sí, las partes donde se usa split, lo saque de un código donde me ayudo engel lex, en un tema que cree [Python 3.6] Como hacer que python lea una cadena especifica de un fichero?