-1
私自身の基本プログラミング言語を作成しようとしています。私はPython - 「PRINT」の印刷のみ
from sys import *
tokens = []
def open_file(filename):
data = open(filename, "r").read()
return data
def smr(filecontents):
tok = ""
state = 0
string = ""
filecontents = list(filecontents)
for char in filecontents:
tok += char
if tok == " ":
if state == 0:
tok = ""
else:
tok = " "
elif tok == "PRINT":
tokens.append("PRINT")
tok = ""
elif tok == "\"":
if state == 0:
state = 1
elif state == 1:
print("STRING")
string = ""
state = 0
elif state == 1:
string += tok
print(tokens)
def run():
data = open_file(argv[1])
smr(data)
run()
私
smrlang.py
ファイルに次のコードを持っていると私は私の
one.smr
ファイルでこれを持っている:
PRINT "HELLO WORLD"
出力はPRINT STRING
のようなものでなければなりませんが、私はコマンドpython3 smrlang.py one.smr
を使用する場合、出力ちょうどPRINT
です。私は頭の中でそれをデバッグPythonの3
デバッガを使用するか、あなたのコードに多くのデバッグprint文を追加します。 –