50 lines
1.8 KiB
Python
50 lines
1.8 KiB
Python
|
|
#!/usr/bin/env python3
|
||
|
|
# -*- coding: utf-8 -*-
|
||
|
|
import json
|
||
|
|
|
||
|
|
def extract_unit_courses_from_json():
|
||
|
|
"""从化工项目案例.json提取每个项目的复合能力课和垂直能力课数据"""
|
||
|
|
|
||
|
|
# 读取化工项目案例数据
|
||
|
|
with open('网页未导入数据/化工产业/化工项目案例.json', 'r', encoding='utf-8') as f:
|
||
|
|
data = json.load(f)
|
||
|
|
|
||
|
|
print('化工项目案例中的单元能力课程数据:')
|
||
|
|
print('=' * 80)
|
||
|
|
|
||
|
|
project_courses = {}
|
||
|
|
|
||
|
|
for i, project in enumerate(data, 1):
|
||
|
|
name = project.get('案例名称', '')
|
||
|
|
composite_courses = project.get('对应单元名称(复合能力课)', '').strip()
|
||
|
|
vertical_courses = project.get('对应单元名称(垂直能力课)', '').strip()
|
||
|
|
|
||
|
|
# 处理复合能力课(用逗号分割)
|
||
|
|
composite_list = []
|
||
|
|
if composite_courses:
|
||
|
|
composite_list = [course.strip() for course in composite_courses.split(',') if course.strip()]
|
||
|
|
|
||
|
|
# 处理垂直能力课(用逗号分割)
|
||
|
|
vertical_list = []
|
||
|
|
if vertical_courses:
|
||
|
|
vertical_list = [course.strip() for course in vertical_courses.split(',') if course.strip()]
|
||
|
|
|
||
|
|
project_courses[i] = {
|
||
|
|
'name': name,
|
||
|
|
'composite_courses': composite_list,
|
||
|
|
'vertical_courses': vertical_list
|
||
|
|
}
|
||
|
|
|
||
|
|
print(f'\n项目 {i}: {name}')
|
||
|
|
print(f' 复合能力课 ({len(composite_list)}个):')
|
||
|
|
for course in composite_list:
|
||
|
|
print(f' - {course}')
|
||
|
|
print(f' 垂直能力课 ({len(vertical_list)}个):')
|
||
|
|
for course in vertical_list:
|
||
|
|
print(f' - {course}')
|
||
|
|
|
||
|
|
print(f'\n总计 {len(project_courses)} 个项目的能力课程数据')
|
||
|
|
return project_courses
|
||
|
|
|
||
|
|
if __name__ == "__main__":
|
||
|
|
extract_unit_courses_from_json()
|