」工欲善其事,必先利其器。「—孔子《論語.錄靈公》
首頁 > 程式設計 > 如何在Python中有效解析固定寬度檔?

如何在Python中有效解析固定寬度檔?

發佈於2024-11-11
瀏覽:459

How can I efficiently parse fixed width files in Python?

固定寬度文件的高效解析

固定寬度文件由於其嚴格的結構而在解析時提出了挑戰。為了解決這個問題,可以採用多種方法來有效地從此類文件中提取資料。

使用 struct Module

Python 標準函式庫的 struct 模組提供了簡潔、快速的方法解析固定寬度線的解決方案。它允許預先定義欄位寬度和資料類型,使其成為大型資料集的合適選擇。以下程式碼片段示範如何利用 struct 來實現此目的:

import struct

fieldwidths = (2, -10, 24)
fmtstring = ' '.join('{}{}'.format(abs(fw), 'x' if fw 

編譯時最佳化的字串切片

字串切片是解析固定寬度檔案的另一種可行方法。雖然最初效率較低,但一種稱為「編譯時最佳化」的技術可以顯著提高效能。下面的程式碼實現了這個最佳化:

def make_parser(fieldwidths):
    cuts = tuple(cut for cut in accumulate(abs(fw) for fw in fieldwidths))
    pads = tuple(fw 

這種最佳化方法為解析固定寬度檔案提供了效率和可讀性。

最新教學 更多>

免責聲明: 提供的所有資源部分來自互聯網,如果有侵犯您的版權或其他權益,請說明詳細緣由並提供版權或權益證明然後發到郵箱:[email protected] 我們會在第一時間內為您處理。

Copyright© 2022 湘ICP备2022001581号-3