def izracunaj_dohvatljiva_stanja(funkcije_prijelaza):
dohvatljiva = []
dohvatljiva.extend(pocetno_stanje)
pomocna = collections.OrderedDict
for i in xrange(len(dohvatljiva)):
for temp in pomocna.keys(): <-----------------------------------this line
if temp.split(',')[0] == dohvatljiva[i]:
if funkcije_prijelaza.get(temp) not in dohvatljiva:
dohvatljiva.extend(funkcije_prijelaza.get(temp))
私はそれを反復できるように順序付けられたdictからすべてのキーを取得しようとしていますが、実行エラーが発生した後: picをクリック
新しい答えを追加するのはかなり古いスレッドです。しかし、私が同様の問題に直面し、その解決策を探したとき、私はこれに答えるようになりました。
これは簡単な方法です。Python 3(Prior to Python 3.6)で辞書をソートできます。
_import collections
d={
"Apple": 5,
"Banana": 95,
"Orange": 2,
"Mango": 7
}
# sorted the dictionary by value using OrderedDict
od = collections.OrderedDict(sorted(d.items(), key=lambda x:x[1]))
print(od)
# OrderedDict([('Orange', 2), ('Apple', 5), ('Mango', 7), ('Banana', 95)])
sorted_fruit_list = list(od.keys())
print(sorted_fruit_list)
# ['Orange', 'Apple', 'Mango', 'Banana']
_
pdate: Python> = 3.6の場合、これを行う必要がありますsorted_fruit_list = [i for i in od.keys()]
Pythonでオブジェクトをインスタンス化する正しい方法は次のとおりです:
pomocna = collections.OrderedDict() # notice the parentheses!
classへの参照を割り当てていました。