初级
实现分页参数解析与验证
未完成
初级参考
完整示例代码供参考,建议自己理解后重新输入
def solve():
from pyodide.http import open_url
from io import StringIO
products_csv = open_url("https://data.zuihe.com/dbd/ms-shop/state_00/products.csv").read()
import pandas as pd
from io import StringIO
products = pd.read_csv(StringIO(products_csv))
total = len(products)
def paginate(data, page, page_size):
if page < 1 or page_size < 1 or page_size > 100:
return {'error': 'invalid pagination params'}
start = (page-1)*page_size
items = data.iloc[start:start+page_size].to_dict('records')
return {'page': page, 'page_size': page_size, 'total': len(data),
'has_next': start+page_size < len(data), 'items': items}
for page, ps in [(1,5),(2,5),(3,5)]:
r = paginate(products, page, ps)
print(f"page={page}: items={len(r['items'])}, has_next={r['has_next']}, total={r['total']}")
示例
输入
solve()
期望输出
page=1: items=5, has_next=True, total=12 page=2: items=5, has_next=True, total=12 page=3: items=2, has_next=False, total=12
👑
升级 VIP
解锁全部题目,畅通无阻地学习
- ✓ 解锁全部训练包所有题目
- ✓ 查看完整参考代码和提示
- ✓ 浏览器内直接运行 Python 代码
- ✓ 自动批改 + 进度追踪
30天
¥18
1年
¥99
2年
¥158
3年
¥199