中级
实现素材审核状态机
未完成
中级参考
代码结构已给出,请填写 ____ 处
def solve():
from pyodide.http import open_url
from io import StringIO
import pandas as pd
crv_csv = open_url(____).read()
creatives = pd.read_csv(StringIO(____))
ACTION_MAP = {'____':(____),'____':(____),'____':(____),'____':(____),'____':(____)}
def process(____):
if action not in ACTION_MAP: return False, '____'
exp_from, to = ACTION_MAP[action]
crv = creatives[creatives['____']==creative_id]
if crv.empty: return False, '____'
cur = crv.iloc[____]['____']
if cur != exp_from: return False, f'____'
return True, f'____'
tests = [(____),(____),(____),(____)]
print(____)
for cid, action in tests:
ok, msg = process(____)
print("____"+cid+"____"+action+"____"+(____))
print("____"+str(dict(creatives.groupby(____).size())))
示例
输入
solve()
期望输出
Review state machine:
CRV-0001 start_review: FAIL invalid_state:approved!=pending
CRV-0001 approve: FAIL invalid_state:approved!=reviewing
CRV-0002 reject: FAIL invalid_state:approved!=reviewing
CRV-0002 resubmit: FAIL invalid_state:approved!=rejected
Status dist: {'approved': np.int64(66), 'pending': np.int64(23), 'rejected': np.int64(31)}
👑
升级 VIP
解锁全部题目,畅通无阻地学习
- ✓ 解锁全部训练包所有题目
- ✓ 查看完整参考代码和提示
- ✓ 浏览器内直接运行 Python 代码
- ✓ 自动批改 + 进度追踪
30天
¥18
1年
¥99
2年
¥158
3年
¥199