修改Python代码新增Medium、Low级别impact数据筛选方法
代码调整方案
原有代码用于拉取财经日历JSON数据,通过列表推导式做数据过滤,初始逻辑仅保留impact字段值为High、Holiday的条目。已知数据源impact字段共包含High、Medium、Low、Holiday四类合法取值,现需将Medium、Low类条目也纳入输出,不改动原有其他逻辑。
推荐用成员运算符in维护允许通过的取值集合,比堆叠多个or判断更易维护,修改后的完整代码如下:
import requests import json # GET NEWS To JSON FILE def get_news(): r = requests.get("https://nfs.faireconomy.media/ff_calendar_thisweek.json") json_file = r.json() # 列表推导式过滤数据,纳入所有合法impact类型条目 output_dict = [ x for x in json_file if x['impact'] in ('High', 'Medium', 'Low', 'Holiday') ] # 转换为格式化JSON字符串 output_json = json.dumps(output_dict, sort_keys=True, indent=4) return output_json
- 如果确定数据源返回的数据不存在非法
impact取值,也可以直接去掉过滤逻辑,将output_dict直接赋值为json_file即可,运行效率更高 - 如果后续需要调整筛选范围,直接修改
in后面元组内的取值即可,不需要改动判断结构
内容的提问来源于stack exchange,提问作者Youssef Gerges
相关产品推荐
相关产品推荐

