zoukankan      html  css  js  c++  java
  • Python习题(分页显示)

    class  Page:
    def __init__(self, lst, pageSize):
    self.lst = lst # 数据
    self.pageSize = pageSize # 每页显示多少条数据
    # 第一页
    def start(self):
    return self.lst[0: self.pageSize]

    def index(self):
    n = int(input("请输入你要显示的页码:"))
    return self.lst[(n-1) * self.pageSize:self.pageSize * n] # 从数据源中获取到当前你要显示的数据

    @property
    def total_page(self): # 一共11条数据. 每页显示 3条数据 10/3+1
    if len(self.lst) % self.pageSize == 0:
    return len(self.lst) // self.pageSize
    else:
    return len(self.lst) // self.pageSize + 1

    def end(self): # 最后一页
    return self.lst[ (self.total_page-1) * self.pageSize:self.pageSize * self.total_page ]

    lst = ["周润发", "李荣浩", "林俊杰", "郑智化", "苏醒", "李诞", "池子", "王建国", "张绍刚", "张全蛋", '张无忌', "张翠山", "张三丰"]

    # 每页显示3条数据 (n-1)* pageSize
    # n 1 2 3 4
    # [0:3] [3:6] [6:9] [9:12]
    # 每页显示4条数据 (n-1)* pageSize
    # n 1 2 3
    # [0:4] [4:8] [8:12]



    page = Page(lst,3)
    print(page.start())
    print(page.index())
    print(page.end())
    # 每页显示3条数据 len(list) % pageSize != 0 len(list) / pageSize + 1
    # 1 2 3
    # [0:3] [3:6] [6:9]
    #
    # 每页显示4条数据
    # 1 2-1 * pageSize 3-1 * pageSize
    # [0:4] [4:8] [8:12]
    #
    # [页-1 * pageSize : 页*pageSize]
  • 相关阅读:
    poj2387Til the Cows Come Home(dijkstra)
    poj2349Arctic Network
    poj1789Truck History
    zoj1586QS Network
    poj2421Constructing Roads
    poj2301Building a Space Station(最小生成树)
    poj1287Networking(最小生成树)
    myeclipse配置svn亲测
    MyEclipse8.6安装svn(非link方式)
    myeclipse一些技巧
  • 原文地址:https://www.cnblogs.com/searchforyou/p/9932253.html
Copyright © 2011-2022 走看看