Python 中用面向对象的思想处理网页翻页 (初级)

第一种处理方法:

 1 class Pagenation(object):
 2     """
 3     处理分页相关的代码
 4     """
 5 
 6     def __init__(self,page,per_page_num=10):
 7         """
 8         初始化
 9         :param page: 当前要查看的页面
10         :param per_page_num: 每页默认要显示的数据行数
11         """
12         self.page = page
13         self.per_page_num = per_page_num
14 
15     @property
16     def start(self):
17         """
18         计算索引的起始位置
19         :return:
20         """
21         return (self.page-1) * self.per_page_num
22 
23     @property
24     def end(self):
25         """
26         计算索引的结束位置
27         :return:
28         """
29         return self.page * self.per_page_num
30 
31 data_list = []
32 
33 for i in range(1, 901):
34     data_list.append('alex-%s' % i)
35 
36 while True:
37     # 1. 要查看的页面
38     page = int(input('请输入要查看的页码:'))
39 
40     obj = Pagenation(page)
41     page_data_list = data_list[obj.start:obj.end]
42     for item in page_data_list:
43         print(item)

第二种方法:

 1 class Pagenation(object):
 2     """
 3     处理分页相关的代码
 4     """
 5 
 6     def __init__(self,data_list,page,per_page_num=10):
 7         """
 8         初始化
 9         :param data_list: 所有的数据
10         :param page: 当前要查看的页面
11         :param per_page_num: 每页默认要显示的数据行数
12         """
13         self.data_list = data_list
14         self.page = page
15         self.per_page_num = per_page_num
16 
17     @property
18     def start(self):
19         """
20         计算索引的起始位置
21         :return:
22         """
23         return (self.page-1) * self.per_page_num
24 
25     @property
26     def end(self):
27         """
28         计算索引的结束位置
29         :return:
30         """
31         return self.page * self.per_page_num
32 
33     def show(self):
34         result = self.data_list[self.start:self.end]
35         for row in result:
36             print(row)
37 
38 
39 data_list = []
40 
41 for i in range(1, 901):
42     data_list.append('alex-%s' % i)
43 
44 while True:
45     # 1. 要查看的页面
46     page = int(input('请输入要查看的页码:'))
47     obj = Pagenation(data_list,page)
48     obj.show()
原文地址:https://www.cnblogs.com/fengchong/p/9555509.html