pythonで辞書とファイル入力を使ったプログラムを作っています。macで「python3 ii.py」と実行したところエラーが出ました。
##発生している問題・エラーメッセージ
Traceback (most recent call last): File "ii.py", line 31, in <module> if total >= excellent: TypeError: '>=' not supported between instances of 'tuple' and 'int'
該当のソースコード
# -*- coding: utf-8 -*- open_file = open('point.txt') raw_data = open_file.read() open_file.close() point_data = raw_data.splitlines() point_dict = {} for line in point_data: student_name, points_str = line.split(':') point_dict[student_name] = points_str score_dict = {} for student_name in point_dict: point_list = point_dict[student_name].split(',') subject_number = len(point_list) total = 0 for point in point_list: total = total + int(point) average = total / subject_number score_dict[student_name] = (total, average, subject_number) evaluation_dict = {} for student_name in score_dict: score_data = score_dict[student_name] total = score_data average = score_data[1] subject_number = score_data[2] excellent = subject_number * 80 good = subject_number * 0.65 if total >= excellent: evaluation = 'Excellent' if total >= good: evaluation = 'Good' else: evaluation = 'Bad' evaluation_dict[student_name] = evaluation file_name = 'evaluation.txt' output_file = open(file_name, 'w') for student_name in score_dict: score_data = score_dict[student_name] total = score_data[0] evaluation = evaluation_dict[student_name] text = '[{}] total: {}, evaluation: {}\n'.format(student_name, total, evaluation) output_file.write(text) output_file.close() print('評価結果を{}に出力しました'.format(file_name))
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。