← 返回题库
中级

实现播放日志60秒内去重

未完成
中级参考 代码结构已给出,请填写 ____ 处
def solve():
    from pyodide.http import open_url
    from io import StringIO
    import pandas as pd
    pl_csv = open_url(____).read()
    logs = pd.read_csv(StringIO(____))
    DEDUP_WINDOW_SEC = ____
    def dedup_logs(____):
        logs_sorted = logs_df.sort_values(____)
        kept = []; dupes = []
        seen = {}
        for _, row in logs_sorted.iterrows():
            key = (____)
            started = int(____)
            if key in seen:
                last_ts = seen[key]
                if started - last_ts < DEDUP_WINDOW_SEC:
                    dupes.append(____)
                    continue
            seen[key] = started
            kept.append(____)
        return pd.DataFrame(____), dupes
    deduped, dupes = dedup_logs(____)
    print("____"+str(____)+"____")
    print("____"+str(len(____))+"____")
    print("____"+str(len(____))+"____")
    print("____"+str(len(____))+"____")
    if dupes:
        print("____"+str(____))

示例

输入
solve()
期望输出
Deduplication results (window=60s):
  Original: 4488 logs
  After dedup: 4480 logs
  Removed: 8 duplicates
  Duplicate log IDs: ['PL-0004485', 'PL-0004488', 'PL-0004486', 'PL-0004484', 'PL-0004487']
Python 代码 🔒 登录后使用
🔒

登录后即可练习

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