私は言語を作っています、そして人が変数にアクセスしたいときはいつでも、それは$記号であります。ただし、すべての関数でifが必要であり、最初の文字が$であるかどうかを確認し、パラメーターが渡されるたびに、すべてのパラメーターに対してこれを実行する必要があります。混沌とします。ifをネストしたくないのですが、関数を簡単に適用してアクセスできるようにしたいと思います。説明するのはちょっと難しいですが、説明するためにいくつかのコードを使用します。
def varcmd(cmd, variables):
if cmd.__len__() < 4:
print "Too little arguments! str <var> = <string>"
else:
if cmd[2] == "=":
if cmd[3][:1] == "$":
variables[cmd[1]] = variables[cmd[3][1:]]
else:
variables[cmd[1]] = cmd[3]
else:
print "Incorrect syntax! str <var> = <string>"
この関数に追加し続けると、ifは指数関数的に増加し、実質的にすべての関数が変数を取ることができるため、すべての関数に大量のifが含まれるようになります。基本的に、私はこのようなものが欲しいです:
def varcmd(cmd, variables):
if cmd.__len__() < 4:
print "Too little arguments! str <var> = <string>"
else:
if cmd[2] == "=":
variables[cmd[1]] = auto_convert_if_var.cmd[3][1:]
else:
print "Incorrect syntax! str <var> = <string>"