2017-10-23 13 views
0

まず第一に、私は、Pythonに新たなんだとダイナミックな辞書を作成しようとしている:私は事は私がしたいですfor r in values:r上記持つ2つのインスタンス名とvalue.Nowを実行している辞書の希望値を取得するには?

editdistances = { r.name : editdistance.eval(baseline.result, r.result)} 

ノートこれは私がしようとしたが、それが値を参照していないので、かなり確信して、それは間違っているものですテーブル

table.append(editdistances[x]) 

に値の部分(editdistance.eval(baseline.result、r.result)を追加。私はどのようにそれを修正することができテーブル内の各値の名前は何であるかまだ分かっています

編集:ちょうど基本的にのiは3人の学生、STUDENT1、生徒2と生徒3と私は入力したいループを使用して一度に一つ一つについて3学年、基本的に最初の反復を持っているとしましょうeditdistances = { r.name : editdistance.eval(baseline.result, r.result)}で別の問題に気づきました生徒1:16 ...第2反復生徒1:16生徒2:12 ...第3反復生徒1:16生徒2:12生徒3:9..4回反復生徒1:16,7生徒2:12生徒3:9 ...など。私はそれを行い、それぞれが別のコースを指すと仮定して、各学年を個別に指すことができるようになります。

答えて

1
editdistances = { 'r.name' : "editdistance.eval(baseline.result, r.result)"} 
table=[] 
for r in editdistances: 
    table.append(editdistances[r]) 
print (table) 

出力

['editdistance.eval(baseline.result, r.result)'] 
0

あなたは、rは、プロパティ値を持っていると仮定すると(辞書内の指定されたキーのために、このように値にアクセスすることができます。

for value in r.values: 
    table.append(editdistances[value]) 

値をrの方法であれば、あなたはまた、括弧を追加する必要があります。

for value in r.values(): 
    table.append(editdistances[value]) 
0

これはあなたが辞書の使い方を聞いているような感じです。

「どのように私はそれを行うと、まだindivuduallyそれぞれを想定し、各学年を参照することができることができますが別のコースを指し、」

最初のレベルでキーとして各学生との辞書を作成します。各学生は、キーのためのコース名と、辞書で、値として添付グレード が続い:

あなたの現在の問題を考えると
students = { 
      'student1' : {'class1' : 'grade1', 'class2' : 'grade2', 'class3' : grade3'}, 
      'student2' : {'class1' : 'grade1', 'class2' : 'grade2', 'class3' : grade3'}, 
      'student3' : {'class1' : 'grade1', 'class2' : 'grade2', 'class3' : grade3'} 
      } 

for student in students: 
    for class_name in student: 
     # print the student's name, class name, and their grade for that class. 
     print (student, class_name, students[student][class_name]) 

、質問自体が明確に そして、あなたは依存関係のコードを持っていることを書かれていません簡単に言及していますが、完全に記述することはできません。

あなたが話していることを確認できるように、依存関係コードを入力してください。たとえば、「私はforループでこれをやっています」という文章は、正確で元のコードを貼り付けるだけではなく、 より多くの文字です。

+0

このコードでは、辞書を自動的に埋めたいと思っており、関数が値を静的に入力したばかりであるため、この問題は解決しません。 – Tim

+0

あなたの質問は「希望の価値を得る」と言います。私はそれがはっきりと書かれていないと言った理由は、 "人口/挿入/設定"ではありません。また、コードにいくつかのタイプミスがあり、探している目的の結果データ構造やコード内で使用しているメソッドの操作を定義しないでください。 さらに、この質問は次のように重複している可能性があります。https://stackoverflow.com/questions/2468334/python-how-to-create-dynamic-and-expandable-dictionaries –

関連する問題