2510회 채점자료 업데이트 / 스크립트 블럭 순서 재정렬 방식 변경

This commit is contained in:
2025-11-06 17:40:57 +09:00
parent 99250cd161
commit eb4e6071ad
12 changed files with 1383 additions and 50 deletions

View File

@@ -34,3 +34,226 @@ Traceback (most recent call last):
File "D:\project\Entry\Entry-Scoring\main.py", line 162, in process_project
total_points += question_points
TypeError: unsupported operand type(s) for +=: 'int' and 'NoneType'
[2025-10-30 16:24:04] [ERROR] [main:301] 🚫Error processing ./output/2510_CAS_2_A/2510_CAS_2_A(정답)\project.json: unsupported operand type(s) for +=: 'int' and 'NoneType'
Traceback (most recent call last):
File "D:\project\Entry\Entry-Scoring\main.py", line 296, in main
points = process_project(project_data, scoring_data)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\project\Entry\Entry-Scoring\main.py", line 162, in process_project
total_points += question_points
TypeError: unsupported operand type(s) for +=: 'int' and 'NoneType'
[2025-10-30 16:26:32] [ERROR] [main:301] 🚫Error processing ./output/2510_CAS_2_A/2510_CAS_2_A(정답)\project.json: unsupported operand type(s) for +=: 'float' and 'NoneType'
Traceback (most recent call last):
File "D:\project\Entry\Entry-Scoring\main.py", line 296, in main
points = process_project(project_data, scoring_data)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\project\Entry\Entry-Scoring\main.py", line 212, in process_project
total_points += block_points
TypeError: unsupported operand type(s) for +=: 'float' and 'NoneType'
[2025-10-31 17:08:00] [ERROR] [main:322] 🚫Error processing ./output/2510_CAS_2_A/2510_CAS_2_A(정답)\project.json: 'NoneType' object is not iterable
Traceback (most recent call last):
File "D:\project\Entry\Entry-Scoring\main.py", line 317, in main
points = process_project(project_data, scoring_data)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\project\Entry\Entry-Scoring\main.py", line 167, in process_project
for block in block_list
^^^^^^^^^^
TypeError: 'NoneType' object is not iterable
[2025-10-31 17:14:04] [ERROR] [main:324] 🚫Error processing ./output/2510_CAS_2_A/2510_CAS_2_A(정답)\project.json: unhashable type: 'list'
Traceback (most recent call last):
File "D:\project\Entry\Entry-Scoring\main.py", line 319, in main
points = process_project(project_data, scoring_data)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\project\Entry\Entry-Scoring\main.py", line 168, in process_project
if block.get("answer") in target_event_answers
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
TypeError: unhashable type: 'list'
[2025-10-31 17:17:42] [ERROR] [main:327] 🚫Error processing ./output/2510_CAS_2_A/2510_CAS_2_A(정답)\project.json: unhashable type: 'list'
Traceback (most recent call last):
File "D:\project\Entry\Entry-Scoring\main.py", line 322, in main
points = process_project(project_data, scoring_data)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\project\Entry\Entry-Scoring\main.py", line 171, in process_project
if answer in target_event_answers: # 조건에 맞는지 확인
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
TypeError: unhashable type: 'list'
[2025-10-31 17:51:14] [ERROR] [main:360] 🚫Error processing ./output/2510_CAS_2_A/2510_CAS_2_A(정답)\project.json: 'list' object has no attribute 'get'
Traceback (most recent call last):
File "D:\project\Entry\Entry-Scoring\main.py", line 355, in main
points = process_project(project_data, scoring_data)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\project\Entry\Entry-Scoring\main.py", line 234, in process_project
script_data = reorder_script_by_event_order(script_json, block_event_order)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\project\Entry\Entry-Scoring\main.py", line 149, in reorder_script_by_event_order
if script.get("type") == event_type:
^^^^^^^^^^
AttributeError: 'list' object has no attribute 'get'
[2025-10-31 17:56:20] [ERROR] [main:360] 🚫Error processing ./output/2510_CAS_2_A/2510_CAS_2_A(정답)\project.json: 'list' object has no attribute 'get'
Traceback (most recent call last):
File "D:\project\Entry\Entry-Scoring\main.py", line 355, in main
points = process_project(project_data, scoring_data)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\project\Entry\Entry-Scoring\main.py", line 234, in process_project
script_data = reorder_script_by_event_order(script_json, block_event_order)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\project\Entry\Entry-Scoring\main.py", line 149, in reorder_script_by_event_order
if script.get("type") == event_type:
^^^^^^^^^^
AttributeError: 'list' object has no attribute 'get'
[2025-10-31 17:56:40] [ERROR] [main:360] 🚫Error processing ./output/2510_CAS_2_A/2510_CAS_2_A(정답)\project.json: 'list' object has no attribute 'get'
Traceback (most recent call last):
File "D:\project\Entry\Entry-Scoring\main.py", line 355, in main
points = process_project(project_data, scoring_data)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\project\Entry\Entry-Scoring\main.py", line 234, in process_project
script_data = reorder_script_by_event_order(script_json, block_event_order)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\project\Entry\Entry-Scoring\main.py", line 149, in reorder_script_by_event_order
if script.get("type") == event_type:
^^^^^^^^^^
AttributeError: 'list' object has no attribute 'get'
[2025-10-31 17:58:18] [ERROR] [main:361] 🚫Error processing ./output/2510_CAS_2_A/2510_CAS_2_A(정답)\project.json: 'list' object has no attribute 'get'
Traceback (most recent call last):
File "D:\project\Entry\Entry-Scoring\main.py", line 356, in main
points = process_project(project_data, scoring_data)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\project\Entry\Entry-Scoring\main.py", line 235, in process_project
script_data = reorder_script_by_event_order(script_json, block_event_order)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\project\Entry\Entry-Scoring\main.py", line 150, in reorder_script_by_event_order
if script.get("type") == event_type:
^^^^^^^^^^
AttributeError: 'list' object has no attribute 'get'
[2025-11-03 16:09:35] [ERROR] [main:399] 🚫Error processing ./output/2510_CAS_2_A/2510_CAS_2_A(정답)\project.json: list indices must be integers or slices, not str
Traceback (most recent call last):
File "D:\project\Entry\Entry-Scoring\main.py", line 394, in main
points = process_project(project_data, scoring_data)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\project\Entry\Entry-Scoring\main.py", line 270, in process_project
script_data = reorder_script_all_cases(script_json, block_event_order)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\project\Entry\Entry-Scoring\main.py", line 167, in reorder_script_all_cases
type_map.setdefault(s["type"], []).append(s)
~^^^^^^^^
TypeError: list indices must be integers or slices, not str
[2025-11-03 17:15:12] [ERROR] [main:433] 🚫Error processing ./output/2510_CAS_2_A/2510_CAS_2_A(정답)\project.json: 0
Traceback (most recent call last):
File "D:\project\Entry\Entry-Scoring\main.py", line 428, in main
points = process_project(project_data, scoring_data)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\project\Entry\Entry-Scoring\main.py", line 310, in process_project
block_elements = find_element(single_script, block_path)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\project\Entry\Entry-Scoring\main.py", line 33, in find_element
for match in jsonpath_expr.find(item):
^^^^^^^^^^^^^^^^^^^^^^^^
File "d:\project\Entry\Entry-Scoring\.venv\Lib\site-packages\jsonpath_ng\jsonpath.py", line 268, in find
for subdata in self.left.find(datum)
^^^^^^^^^^^^^^^^^^^^^
File "d:\project\Entry\Entry-Scoring\.venv\Lib\site-packages\jsonpath_ng\jsonpath.py", line 270, in find
for submatch in self.right.find(subdata)]
^^^^^^^^^^^^^^^^^^^^^^^^
File "d:\project\Entry\Entry-Scoring\.venv\Lib\site-packages\jsonpath_ng\jsonpath.py", line 680, in find
return self._find_base(datum, create=False)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "d:\project\Entry\Entry-Scoring\.venv\Lib\site-packages\jsonpath_ng\jsonpath.py", line 692, in _find_base
return [DatumInContext(datum.value[self.index], path=self, context=datum)]
~~~~~~~~~~~^^^^^^^^^^^^
KeyError: 0
[2025-11-03 17:20:20] [ERROR] [main:417] 🚫Error processing ./output/2510_CAS_2_A/2510_CAS_2_A(정답)\project.json: 0
Traceback (most recent call last):
File "D:\project\Entry\Entry-Scoring\main.py", line 412, in main
points = process_project(project_data, scoring_data)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\project\Entry\Entry-Scoring\main.py", line 300, in process_project
block_elements = find_element(data, block_path)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\project\Entry\Entry-Scoring\main.py", line 33, in find_element
for match in jsonpath_expr.find(item):
^^^^^^^^^^^^^^^^^^^^^^^^
File "d:\project\Entry\Entry-Scoring\.venv\Lib\site-packages\jsonpath_ng\jsonpath.py", line 268, in find
for subdata in self.left.find(datum)
^^^^^^^^^^^^^^^^^^^^^
File "d:\project\Entry\Entry-Scoring\.venv\Lib\site-packages\jsonpath_ng\jsonpath.py", line 270, in find
for submatch in self.right.find(subdata)]
^^^^^^^^^^^^^^^^^^^^^^^^
File "d:\project\Entry\Entry-Scoring\.venv\Lib\site-packages\jsonpath_ng\jsonpath.py", line 680, in find
return self._find_base(datum, create=False)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "d:\project\Entry\Entry-Scoring\.venv\Lib\site-packages\jsonpath_ng\jsonpath.py", line 692, in _find_base
return [DatumInContext(datum.value[self.index], path=self, context=datum)]
~~~~~~~~~~~^^^^^^^^^^^^
KeyError: 0
[2025-11-03 17:21:39] [ERROR] [main:407] 🚫Error processing ./output/2510_CAS_2_A/2510_CAS_2_A(정답)\project.json: 1
Traceback (most recent call last):
File "D:\project\Entry\Entry-Scoring\main.py", line 402, in main
points = process_project(project_data, scoring_data)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\project\Entry\Entry-Scoring\main.py", line 288, in process_project
block_elements = find_list_element(data, block_path)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\project\Entry\Entry-Scoring\main.py", line 48, in find_list_element
result.append([match.value for match in jsonpath_expr.find(data)])
^^^^^^^^^^^^^^^^^^^^^^^^
File "d:\project\Entry\Entry-Scoring\.venv\Lib\site-packages\jsonpath_ng\jsonpath.py", line 268, in find
for subdata in self.left.find(datum)
^^^^^^^^^^^^^^^^^^^^^
File "d:\project\Entry\Entry-Scoring\.venv\Lib\site-packages\jsonpath_ng\jsonpath.py", line 270, in find
for submatch in self.right.find(subdata)]
^^^^^^^^^^^^^^^^^^^^^^^^
File "d:\project\Entry\Entry-Scoring\.venv\Lib\site-packages\jsonpath_ng\jsonpath.py", line 680, in find
return self._find_base(datum, create=False)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "d:\project\Entry\Entry-Scoring\.venv\Lib\site-packages\jsonpath_ng\jsonpath.py", line 692, in _find_base
return [DatumInContext(datum.value[self.index], path=self, context=datum)]
~~~~~~~~~~~^^^^^^^^^^^^
KeyError: 1
[2025-11-04 15:36:56] [ERROR] [main:423] 🚫Error processing ./output/2510_CAS_2_A/코딩활용능력2급(엔트리)-000139-성지환\project.json: 'NoneType' object is not iterable
Traceback (most recent call last):
File "D:\project\Entry\Entry-Scoring\main.py", line 418, in main
points = process_project(project_data, scoring_data)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\project\Entry\Entry-Scoring\main.py", line 268, in process_project
script_data = reorder_script_all_cases(script_json, block_event_order)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\project\Entry\Entry-Scoring\main.py", line 167, in reorder_script_all_cases
for s in script_json:
^^^^^^^^^^^
TypeError: 'NoneType' object is not iterable
[2025-11-04 16:20:44] [ERROR] [main:423] 🚫Error processing ./output/2510_CAS_2_A/코딩활용능력2급(엔트리)-000139-성지환\project.json: 'NoneType' object is not iterable
Traceback (most recent call last):
File "D:\project\Entry\Entry-Scoring\main.py", line 418, in main
points = process_project(project_data, scoring_data)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\project\Entry\Entry-Scoring\main.py", line 268, in process_project
script_data = reorder_script_all_cases(script_json, block_event_order)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\project\Entry\Entry-Scoring\main.py", line 167, in reorder_script_all_cases
for s in script_json:
^^^^^^^^^^^
TypeError: 'NoneType' object is not iterable
[2025-11-04 17:11:33] [ERROR] [main:423] 🚫Error processing ./output/2510_CAS_2_A/코딩활용능력2급(엔트리)-000139-성지환\project.json: 'NoneType' object is not iterable
Traceback (most recent call last):
File "D:\project\Entry\Entry-Scoring\main.py", line 418, in main
points = process_project(project_data, scoring_data)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\project\Entry\Entry-Scoring\main.py", line 268, in process_project
script_data = reorder_script_all_cases(script_json, block_event_order)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\project\Entry\Entry-Scoring\main.py", line 167, in reorder_script_all_cases
for s in script_json:
^^^^^^^^^^^
TypeError: 'NoneType' object is not iterable
[2025-11-05 16:02:42] [ERROR] [main:423] 🚫Error processing ./output/00_test/코딩활용능력2급(엔트리)-000139-성지환\project.json: 'NoneType' object is not iterable
Traceback (most recent call last):
File "D:\project\Entry\Entry-Scoring\main.py", line 418, in main
points = process_project(project_data, scoring_data)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\project\Entry\Entry-Scoring\main.py", line 268, in process_project
script_data = reorder_script_all_cases(script_json, block_event_order)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\project\Entry\Entry-Scoring\main.py", line 167, in reorder_script_all_cases
for s in script_json:
^^^^^^^^^^^
TypeError: 'NoneType' object is not iterable