django后台多页面分页逻辑python代码

#!/usr/bin/env python
# -*- coding:utf-8 -*-
# Created by 秋叶夏风

# 本模块的功能:<>

def get_page_list(max_page,curr_page,leng):
    '''
    用于生成页数列表
    :param max_page:最大页数
    :param curr_page:当前页数
    :param leng:分页步长
    :return:list
    '''
    # max_page = 20
    # curr_page = 18
    # leng = 3
    page_list = []
    if curr_page in range(leng+1,max_page-leng+1):
        k = 0
    elif curr_page > max_page / 2:
        k = max_page - curr_page - leng + 1
    elif curr_page < max_page / 2:
        k = leng - curr_page + 1
    for i in range(0-leng,leng):
        j = curr_page + i + k
        page_list.append(j)
    print(page_list)
    return page_list

if __name__ == '__main__':
    get_page_list(100,21,5)


'''

       ┌─┐       ┌─┐ + +
    ┌──┘ ┴───────┘ ┴──┐++
    │                 │
    │       ───       │++ + + +
    ███████───███████ │+
    │                 │+
    │       ─┴─       │
    │                 │
    └───┐         ┌───┘
        │         │
        │         │   + +
        │         │
        │         └──────────────┐
        │                        │
        │                        ├─┐
        │                        ┌─┘
        │                        │
        └─┐  ┐  ┌───────┬──┐  ┌──┘  + + + +
          │ ─┤ ─┤       │ ─┤ ─┤
          └──┴──┘       └──┴──┘  + + + +
                 神兽保佑
                代码无BUG!

'''

作者:秋叶夏风
出处:https://blog.csdn.net/qq_40223983
本文版权归作者和CSDN博客共有。欢迎转载,但必须保留此段声明,且在文章页面明显位置给出原文连接!

原文地址:https://www.cnblogs.com/victorfengming/p/11930960.html