最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

一文教你使用Python實現(xiàn)本地分頁

 更新時間:2025年02月10日 10:44:13   作者:快樂星球沒有樂  
這篇文章主要為大家詳細介紹了Python如何實現(xiàn)本地分頁的算法,主要針對二級數(shù)據(jù)結構,文中的示例代碼簡潔易懂,有需要的小伙伴可以了解下

在項目開發(fā)的過程中,遇到分頁的第一頁就展示大量的數(shù)據(jù),導致前端列表加載展示的速度慢,所以需要在本地加入分頁處理,把所有數(shù)據(jù)先放到內存里,下面我用Python演示如何實現(xiàn)本地分頁的算法(針對二級數(shù)據(jù)結構)

initialSize = 2 # 首屏展示條數(shù)
eachSize = 5    # 剩余頁展示條數(shù)

local_pages = []  # 本地分頁數(shù)據(jù)

def makePage(d):
    '''
    制作分頁數(shù)據(jù)
    '''
    local_pages.clear()
    if calcSize(d) > initialSize: # 總條數(shù)大于首屏數(shù),使用本地分頁
        sublist = []
        for item in d:
            for child in item["child"]:
                sublist.append(child)
        
        firstPageSize = min(len(sublist), initialSize) # 第一頁的大小

        local_pages.append(sublist[0:firstPageSize]) # 取第一頁的集合

        remain_size = len(sublist)-firstPageSize # 剩余條數(shù)

        group_count = int(remain_size / eachSize) # 計算分頁數(shù)

        last_count = remain_size % eachSize # 取余,最后剩余多少條

        idx = 0
        for idx in range(group_count):
            start = firstPageSize + idx * eachSize
            end = start + eachSize
            local_pages.append(sublist[start:end]) # 新增頁集合

        if last_count > 0:
            local_pages.append(sublist[-last_count:]) # 余數(shù)不為0,將作為最后一頁集合
    
    pass
                

def calcSize(d)->int:
    '''
    計算總條數(shù)
    '''
    size = 0
    for item in d:
        size += len(item["child"]) + 1
    return size

def printPage():
    '''
    打印頁面
    '''
    idx = 0
    for p in local_pages:
        idx += 1
        print("page:{}".format(idx))
        for item in p:
            print(item)


data = [{"id":"1",
         "name":"parent_1",
         "child":[
             {"id":"1_1",
              "name":"RS234326348264",
              "parent_id":"1"
              },
             {"id":"1_2",
              "name":"RS234326348264",
              "parent_id":"1"
              },
             {"id":"1_3",
              "name":"RS234326348264",
              "parent_id":"1"
              },
             {"id":"1_4",
              "name":"RS234326348264",
              "parent_id":"1"
              },
              {"id":"1_5",
              "name":"RS234326348264",
              "parent_id":"1"
              },
              {"id":"1_6",
              "name":"RS234326348264",
              "parent_id":"1"
              },
              {"id":"1_7",
              "name":"RS234326348264",
              "parent_id":"1"
              },
              {"id":"1_8",
              "name":"RS234326348264",
              "parent_id":"1"
              },
              {"id":"1_9",
              "name":"RS234326348264",
              "parent_id":"1"
              }]},

        {"id":"2",
         "name":"parent_2",
         "child":[
              {"id":"2_1",
              "name":"RS234326348264",
              "parent_id":"2"
              }]}]

print(f"首屏展示條數(shù):{initialSize}")
print(f"剩余頁展示條數(shù):{eachSize}")
makePage(data)
printPage()

打印結果

首屏展示條數(shù):2
剩余頁展示條數(shù):5
page:1
{'id': '1_1', 'name': 'RS234326348264', 'parent_id': '1'}
{'id': '1_2', 'name': 'RS234326348264', 'parent_id': '1'}
page:2
{'id': '1_3', 'name': 'RS234326348264', 'parent_id': '1'}
{'id': '1_4', 'name': 'RS234326348264', 'parent_id': '1'}
{'id': '1_5', 'name': 'RS234326348264', 'parent_id': '1'}
{'id': '1_6', 'name': 'RS234326348264', 'parent_id': '1'}
{'id': '1_7', 'name': 'RS234326348264', 'parent_id': '1'}
page:3
{'id': '1_8', 'name': 'RS234326348264', 'parent_id': '1'}
{'id': '1_9', 'name': 'RS234326348264', 'parent_id': '1'}
{'id': '2_1', 'name': 'RS234326348264', 'parent_id': '2'}

到此這篇關于一文教你使用Python實現(xiàn)本地分頁的文章就介紹到這了,更多相關Python本地分頁內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • Python面向對象總結及類與正則表達式詳解

    Python面向對象總結及類與正則表達式詳解

    Python中的類提供了面向對象編程的所有基本功能:類的繼承機制允許多個基類,派生類可以覆蓋基類中的任何方法,方法中可以調用基類中的同名方法。這篇文章主要介紹了Python面向對象總結及類與正則表達式 ,需要的朋友可以參考下
    2019-04-04
  • 使用Python實現(xiàn)一個安全封裝EXE文件加密保護工具

    使用Python實現(xiàn)一個安全封裝EXE文件加密保護工具

    文章介紹了使用Python開發(fā)的EXE文件加密保護工具,該工具使用AES-256加密算法保護原始EXE文件,并通過美觀的密碼驗證界面進行訪問,需要的朋友可以參考下
    2025-12-12
  • 淺談在django中使用filter()(即對QuerySet操作)時踩的坑

    淺談在django中使用filter()(即對QuerySet操作)時踩的坑

    這篇文章主要介紹了淺談在django中使用filter()(即對QuerySet操作)時踩的坑,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-03-03
  • python實現(xiàn)文件批量編碼轉換及注意事項

    python實現(xiàn)文件批量編碼轉換及注意事項

    本文通過實例代碼給大家介紹了python實現(xiàn)文件批量編碼轉換及注意事項,非常不錯,具有一定的參考借鑒價值,需要的朋友參考下吧
    2019-10-10
  • 比較詳細Python正則表達式操作指南(re使用)

    比較詳細Python正則表達式操作指南(re使用)

    Python 1.5之前版本則是通過 regex 模塊提供 Emecs 風格的模式。Emacs 風格模式可讀性稍差些,而且功能也不強,因此編寫新代碼時盡量不要再使用 regex 模塊,當然偶爾你還是可能在老代碼里發(fā)現(xiàn)其蹤影
    2008-09-09
  • 如何在Win10系統(tǒng)使用Python3連接Hive

    如何在Win10系統(tǒng)使用Python3連接Hive

    這篇文章主要介紹了如何在Win10系統(tǒng)使用Python3連接Hive,幫助大家更好的利用python讀取數(shù)據(jù),進行探索、分析和挖掘工作。感興趣的朋友可以了解下
    2020-10-10
  • Pytorch中Tensor與各種圖像格式的相互轉化詳解

    Pytorch中Tensor與各種圖像格式的相互轉化詳解

    這篇文章主要介紹了Pytorch中Tensor與各種圖像格式的相互轉化詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-12-12
  • python requests證書問題解決

    python requests證書問題解決

    這篇文章主要介紹了python requests證書問題解決,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2019-09-09
  • Python利用wxPython制作股票價格查詢工具

    Python利用wxPython制作股票價格查詢工具

    在當今信息時代,金融市場是一個引人注目的話題。本文將介紹如何使用 Yahoo Finance API、yfinance 模塊和 wxPython 庫來創(chuàng)建一個簡單的全球股市實時價格查詢工具,希望大家能夠喜歡
    2023-05-05
  • Python實現(xiàn)JSON數(shù)據(jù)提取與轉換的命令行工具程序

    Python實現(xiàn)JSON數(shù)據(jù)提取與轉換的命令行工具程序

    這篇文章主要為大家詳細介紹了如何使用Python實現(xiàn)JSON數(shù)據(jù)提取與轉換的命令行工具程序,核心功能是從一個特定結構的?JSON?輸入文件中提取特定數(shù)據(jù)并寫入到一個新的?JSON?文件中,感興趣的小伙伴可以了解下
    2026-04-04

最新評論

沐川县| 宾阳县| 临夏县| 香港| 巨野县| 莲花县| 策勒县| 偏关县| 黄山市| 庆云县| 怀安县| 民县| 兴山县| 蒲城县| 绍兴市| 漳平市| 南岸区| 正定县| 静宁县| 保山市| 千阳县| 甘孜县| 荔浦县| 北安市| 河东区| 两当县| 黄梅县| 浠水县| 临沭县| 平遥县| 兴隆县| 衡阳市| 长治市| 留坝县| 临沭县| 青龙| 阿坝县| 农安县| 南川市| 卢湾区| 田东县|