以下是一个解决按照索引的三个项目进行分组的分页的代码示例:
def paginate_by_index(items, page_size):
# 按照索引的三个项目来分组
groups = [items[i:i+3] for i in range(0, len(items), 3)]
# 分页逻辑
total_pages = len(groups)
page_size = min(page_size, total_pages)
while True:
page_num = input("请输入要查看的页码(输入q退出):")
if page_num.lower() == "q":
break
try:
page_num = int(page_num)
if page_num < 1 or page_num > total_pages:
print("无效的页码,请重新输入")
continue
# 获取当前页的数据
current_page = groups[page_num-1]
for item in current_page:
print(item)
except ValueError:
print("无效的页码,请重新输入")
# 示例用法
items = ["项目1", "项目2", "项目3", "项目4", "项目5", "项目6", "项目7", "项目8", "项目9"]
page_size = 2
paginate_by_index(items, page_size)
这个示例中,我们首先将原始列表按照索引的三个项目进行分组,然后根据输入的页码来显示当前页的数据。用户可以通过输入页码来查看不同的页数,输入"q"可以退出分页。