中级
解析温室集控网关批量上报
未完成
中级参考
代码结构已给出,请填写 ____ 处
def solve():
from pyodide.http import open_url
from io import StringIO
import pandas as pd, json
devs_csv = open_url(____).read()
devs = pd.read_csv(StringIO(____))
valid_ids = set(____)
PARSERS = {'____':'____','____':'____','____':'____','____':'____'}
def parse_gateway_batch(____):
p = json.loads(____)
dispatched = {}; rejected = []
for item in p.get(____):
did = item.get(____)
rtype = item.get(____)
if did not in valid_ids:
rejected.append(____)
else:
parser = PARSERS.get(____)
dispatched.setdefault(____).append(____)
return {'____':p.get(____),'____':dispatched,'____':rejected}
payload = '____'
result = parse_gateway_batch(____)
print(____)
for parser, devs_list in result['____'].items():
print("____" + parser + "____" + str(____))
print("____" + str(____))
示例
输入
solve()
期望输出
Gateway: GW-FARM
soil_parser: ['SOIL-A01']
weather_parser: ['WS-001']
fert_parser: ['FERT-A01']
rejected: [{'device_id': 'SOIL-X99', 'reason': 'unknown_device'}]
👑
升级 VIP
解锁全部题目,畅通无阻地学习
- ✓ 解锁全部训练包所有题目
- ✓ 查看完整参考代码和提示
- ✓ 浏览器内直接运行 Python 代码
- ✓ 自动批改 + 进度追踪
30天
¥18
1年
¥99
2年
¥158
3年
¥199