私はUdemyを通していくつかのコースを取っています。 Python 3.xコースの最終プロジェクトでは、私がうまくやった簡単なUIを作っています。Python 3.5辞書に追加して値を代入する
前提は、学生のための等級トラッカーです。成績を追加したり、生徒を削除したり、生徒の成績を平均したり、プログラムを終了したりすることができます。
私はレッスンではないことをしたいと思っていました。新しい学生を追加することができました。私は別のオプションを追加しました。私は思っていたことを入力しようとしましたが、エラーが続いています。私は最終的に新しい生徒に入ることができましたが、その生徒の成績を追加しようとすると、生徒は存在しなかったと言えます。
私はこれをどのように達成することができますか?
すべてのサポートをよろしくお願いいたします。以下のコード:
#Making a Python Program
from statistics import mean as m
admins = {'Python':'[email protected]', 'user2':'pass2'}#this will be here authorized users and passwords would be
studentDict= {'Jeff':[78,88,93],
'Alex':[92,76,88],
'Sam':[89, 92, 93]}
def enterGrades():
nameToEnter= input('Student Name: ')
gradeToEnter= input ('Grade: ')
if nameToEnter in studentDict:
print('Adding Grade...')
studentDict [nameToEnter].append(float(gradeToEnter))
else:
print ('Student does not exist.')
print (studentDict)
def removeStudent():
nameToRemove = input ('Which student do you want to remove?: ')
if nameToRemove in studentDict:
print('Removing student...')
del studentDict[nameToRemove]
print (studentDict)
def addStudent():
nameToAdd = input ('Enter the name of the new student: ')
if nameToAdd in studentDict:
print ('Student already exists.')
else:
print ('Adding new student...')
studentDict[nameToAdd]
print (studentDict)
#Crashes upon entering student name.
def studentAVGs():
for eachStudent in studentDict:
gradeList= studentDict[eachStudent]
avgGrade = m(gradeList)
print(eachStudent, 'has an average grade of', avgGrade)
def main():
print("""
Welcome to Grade Central
[1] - Enter Grades
[2] - Remove Student
[3] - Add Student
[4] - Student Average Grades
[5] - Exit
""")
action= input ('What would you like to do today? (Enter a number) ')
if action == '1':
enterGrades()
elif action == '2':
removeStudent()
elif action == '3':
addStudent()
elif action == '4':
studentAVGs()
elif action == '5':
exit()
else:
print ('No valid choice was given, try again')
login= input('Username: ')
passw= input('Password: ')
if login in admins:
if admins[login] == passw:
print('Welcome,',login)
while True:
main()
else:
print('Invalid Password, will detonate in 5 seconds')
else:
print ('Invalid username, calling the FBI to report this')
基本的には、オプション3の新しい生徒に入力して、その生徒にオプション1で成績を割り当てることができます。新しい生徒を作成するときに成績を入力する必要があるので、キーの値はすぐに? –
いいえ、言葉の貧しい選択。これは、実世界に価値のないテキストベースのプログラムです。それはトレーニングのためのものです。 –