2016-03-31 14 views
-1

シンプルグレードブック印刷を適切に行うには、Pythonファイルのヘルプが必要です。私はそれを印刷するようにしましたが、私が必要とするものを正確にやっていません。印刷結果は、理想的には私はそれがそれぞれの名前/学年のための新しい行に、お互いの隣にちょうど名前と学年を印刷したいPythonシンプルグレードブック印刷エラー

{'Fred': '99', 'Fred2': '99', ...}

、このように見えます。このような何か:

"Name: Fred | Grade: 99"

私はリスト/辞書を使用する必要があります。ここで、whileループ

を必要とするが、私がこれまで試してみました最適なソリューションです:

student_grades = {} 

entries = input('Would you like to enter a students name and grade? (Y/N): ') 
entries = entries.lower() 

while entries == "y": 
    name = input('Enter a students name: ') 
    grade = input('Enter the student\'s grade: ') 
    #Put in dictionary 
    student_grades[name] = grade 
    #Print 
    print(student_grades) 
    entries = input('Would you like to enter a students name and grade? (Y/N)') 
    entries = entries.lower() 

else: 
    names = list(student_grades.keys()) 
    grades = list(student_grades.values()) 
    print() 
    print('  Grade Book  ') 
    print('--------------------') 
    print(student_grades) 
+0

私はそれを今考え出しました。答えた人のためにありがとう。 – Johnny

答えて

0
for student,grade in student_grades.iteritems(): 
    print "Name:%s, Grade:%s"%(student,grade) 
+0

ありがとう、私はこれを実装することができたし、それは非常にうまく動作します! – Johnny

0

これは将来必要な人のための最終作業コードです!誰も助けてくれてありがとう!

student_grades = {} 
entries = input('Would you like to enter a students name and grade? (Y/N): ') 
entries = entries.lower() 

while entries == "y": 
    name = input('Enter a students name: ') 
    grade = input('Enter the student\'s grade: ') 
    #Put in dictionary 
    student_grades[name] = grade 
    #Print 
    print(student_grades) 
    entries = input('Would you like to enter a students name and grade? (Y/N): ') 
    entries = entries.lower() 

else: 
    names = list(student_grades.keys()) 
    grades = list(student_grades.values()) 
    print() 
    print('  Grade Book  ') 
    print('--------------------') 
    print() 
    for name in student_grades: 
     print("Name: "+name+" "+"Grade: "+student_grades[name])