← 返回题库
中级

实现订单状态流转验证

未完成
中级参考 代码结构已给出,请填写 ____ 处
def solve():
    from pyodide.http import open_url
    users_csv = open_url(____).read()
    categories_csv = open_url(____).read()
    products_csv = open_url(____).read()
    orders_csv = open_url(____).read()
    order_items_csv = open_url(____).read()
    import sqlite3
    import pandas as pd
    from io import StringIO

    conn = sqlite3.connect(____)
    pd.read_csv(StringIO(____)).to_sql(____)

    VALID_TRANSITIONS = {
        '____':   ['____', '____'],
        '____':      ['____', '____'],
        '____':   ['____', '____'],
        '____': [],
        '____': [],
    }

    def can_transition(____):
        return target in VALID_TRANSITIONS.get(____)

    orders = pd.read_sql_query(____)
    # 尝试将每个订单推进到下一状态
    next_state = {'____': '____', '____': '____', '____': '____',
                  '____': '____', '____': '____'}
    allowed = ____
    rejected = ____
    for _, row in orders.iterrows():
        target = next_state[row['____']]
        if can_transition(____):
            allowed += ____
        else:
            rejected += ____
    print(____)
    print(____)
    conn.close()

示例

输入
solve()
期望输出
允许流转: 5
拒绝流转: 3
Python 代码 🔒 登录后使用
🔒

登录后即可练习

注册免费账号,在浏览器中直接运行 Python 代码