エラー メッセージ 'int' object is not callable は、整数オブジェクトを呼び出し可能な関数として使用しようとしていることを示します。これは通常、関数呼び出し構文を使用するときに発生しますが、実際にはここでは関数呼び出し構文を使用すべきではありません。
for id in studentid.keys():
print(id+','+studentid[id],end='')
score=studentscore[id]
sum=0
cnt=0
for name in coursename:
print(','+score[name],end='')
sum+=int(score[name])
cnt+=1
print(','+str(int(sum/cnt)))
Python={
"Jhon":78,'张三':80}
OOP={
"Jhon":82,'张三':80}
军事学={
"Jhon":90,'张三':80}
微积分={
"Jhon":83,'张三':80}
s=(sum(Python.values())/len(Python),sum(OOP.values())/len(OOP),sum(军事学.values())/len(军事学),sum(微积分.values())/len(微积分))
print(s)
このコードでは、sum が整数変数と sum 合計関数の両方として使用されています。この 2 つは競合します。
解決策: 上記の sum 整数変数の名前を add_sum に変更します。
for id in studentid.keys():
print(id+','+studentid[id],end='')
score=studentscore[id]
add_sum=0
cnt=0
for name in coursename:
print(','+score[name],end='')
add_sum+=int(score[name])
cnt+=1
print(','+str(int(add_sum/cnt)))
Python={
"Jhon":78,'张三':80}
OOP={
"Jhon":82,'张三':80}
军事学={
"Jhon":90,'张三':80}
微积分={
"Jhon":83,'张三':80}
s=(sum(Python.values())/len(Python),sum(OOP.values())/len(OOP),sum(军事学.values())/len(军事学),sum(微积分.values())/len(微积分))
print(s)