import json pmlst = [] with open('hdxpm.json', encoding='utf-8') as fn: js = json.load(fn) datalst = js['data']['rankings'] for da in datalst: name = da['univNameCn'] addr = da['province'] score = da['univCategory'] pm = da['ranking'] pmlst.append([name,addr,score,pm]) pmlst = [sch for sch in pmlst if sch[2]=='理工'] pmlst.sort(key=lambda x:int(x[3]),reverse=False) for i in pmlst[:5]: print(i[0]+' '+i[1]+' '+i[3])
时间: 2023-10-07 22:07:45 浏览: 64
vue-json-tree-view:Vue.js的JSON树视图组件
这段代码主要是使用Python中的`json`模块对JSON格式的数据进行读取和处理,提取了大学排名等信息,并进行了筛选和排序。具体的解释如下:
- 第一行代码中,`import json`语句用于导入`json`模块。
- 第二行代码中,定义了一个名为`pmlst`的空列表,用于存储提取出的大学排名信息。
- 第三行代码中,使用`open()`函数打开名为`hdxpm.json`的文件,使用`json.load()`方法将文件中的JSON数据读取出来,并将结果存储在名为`js`的变量中。这里使用了`encoding='utf-8'`参数来指定文件的编码格式为UTF-8。
- 第四行代码中,提取了JSON数据中的`data`和`rankings`字段,并将结果存储在名为`datalst`的变量中。
- 第五行代码中,使用`for`循环遍历`datalst`中的每个元素,提取了其中的`univNameCn`、`province`、`univCategory`和`ranking`字段,并将结果存储在名为`pmlst`的列表中。
- 第六行代码中,使用列表解析表达式对`pmlst`列表进行了筛选,只保留了`univCategory`字段为`'理工'`的大学排名信息。
- 第七行代码中,使用`sort()`方法对`pmlst`列表进行排序,按照`ranking`字段从小到大的顺序排序。
- 第八行代码中,使用`for`循环遍历`pmlst`中排名最靠前的5个大学,并使用`print()`函数输出它们的`univNameCn`、`province`和`ranking`字段。
需要注意的是,以上代码中的变量名和数据内容都是示例,实际应用中需要根据具体的需求进行修改和调整。另外,为了保证代码的可读性和可维护性,建议对变量名进行规范命名。
阅读全文