0
のリストを反復処理:私はPythonで、このコードを持っているリストと辞書のpython
from pprint import pprint
def addDictionary(States,Transition,Languaje,Tr):
for s in States :
D = {}
Transition[s] = D # this create {"state1":{"symbol1":}}
for l in Languaje:
for i in range(len(Tr)):
D[l] = Tr[i][0]
def addStates(States):
cant = int(raw_input("how many states?: "))
for i in range(cant):
c = "q"+str(i)
States.append(c)
def addLan(Languaje):
c = int(raw_input("how many symbols?: "))
for j in range(c):
l = raw_input("symbol: ")
Languaje.append(l)
if __name__ == "__main__":
States=[]
Languaje=[]
Transition={} #{"state":{"symbol1":"transition value","symbol2":"transition value"}}
Tr=[["q2","q1"],["","q2"]] #transition values
addStates(States)
addLan(Languaje)
addDictionary(States,Transition,Languaje,Tr)
pprint(Transition)
をし、これが出力されます:
{'q0': {'a': '', 'b': ''}, 'q1': {'a': '', 'b': ''}}
私が欲しいものは、このようなものです:
{'q0': {'a': 'q2', 'b': 'q1'}, 'q1': {'a': '', 'b': 'q2'}}
私の辞書にリストTr
の値を入れたいと思います。 これは単なるコード例です。私は、コード最初の入力2
証明するためにそれを言及するのを忘れてしまった
私は大学でクラス用に開発決定性有限オートマトンを実装する、その後、2
、その後a
とb
私は自分のコードを証明したいので、 2x2のリストがあります。後でnxmリストのために変更します。 (英語の私の「中」のスキルは申し訳ありません:V)
もう1つ:問題は関数addDictionary()
です。
わかりやすい変数名を使用するようにコードを書き直せますか?すべての変数が1文字または2文字しかないときに何が起こっているのかを理解するのは難しいです。 –
Python 2を使用していますか? – lmiguelvargasf
私はPython 2.7を使用しています – Ravield