◆林鵬 孟硯怡/房縣審計局
大數據的運用給包括審計在內的各行各業帶來了前所未有的機遇與挑戰。本文介紹大數據背景下,基于Python的數據分析算法在審計中的應用,探索了一種整合Python代碼的方法,將審計人員使用的對數據進行整理、挖掘和分析的過程代碼化,通過整合匯總成一個控制臺,最后將Python語句打包成exe可執行文件。此方法解決了Python入門門檻的問題,不會Python語言的審計人員,也可以使用Python語句快速分析數據,提高審計效率。
Python作為一種簡潔、可擴展性強的面向對象的編程語言,已廣泛應用于數據分析、文本處理等領域。采用Py?thon語言開發控制平臺,實現常用數據分析方法的匯集,為大數據分析提供更多更好的工具。程序主體分為兩個模塊:控制臺模塊和數據分析工具模塊。
在程序開始時,首先進入的是系統主界面,這里做了一個簡單的交互程序設計,顯示可選擇的功能菜單,可通過數字或上下方向鍵選擇菜單。Python的代碼匯總平臺如圖1。

圖1
首先,導入默認庫中的os類,利用os類中的input和re函數,獲得使用者選項的過程代號。然后,將可用的Python語句封裝成過程,再使用一個循環語句,通過代號調用該過程,實現數據分析。代碼如圖2。

圖2
Python有豐富的擴展庫可用于完成各種高級任務,為展示匯總平臺的有效性,本文使用Python進行編程,實現不打開excel文件,就可以對excel進行查看的功能。
首先,也是利用os模塊下的input函數,對用戶輸入的文件地址進行處理,自動列出文件的全路徑和文件名。然后,通過選擇序號的方式選中要查看的excel文件。
從待查看的excel文件中獲取文件信息,首先,使用openpyxl庫打開文件。由于openpyxl不支持xls文件,在數據準備階段需要將舊版的xls文件全部轉換為后綴名為xl?sx的excel文件。然后,利用openpyxl庫中的load_workbook讀出文件的表名、行、字段等基本信息。最后,使用雙重循環,遍歷文件中的前5行并打印。這樣就實現了在不打開表格的情況下查看數據的功能。
步驟一:將反復用到的代碼定義為一個函數,使用處理后的返回值。這里定義了一個名為ch_one_file()的函數,用于獲取文件的全路徑和文件名,得到的結果使用return()返回。如圖3。

圖3
步驟二:采用函數調用的方式使用代碼。調用ch_one_file()函數后,filename就是經過處理后的文件的全路徑和文件名。如圖4。

圖4
步驟三:使用循環語句,打印界面給可調用的函數編號,方便用戶使用。如圖5。

圖5
通過Python語句處理excel,不需要考慮平臺、程序設計等方面的問題,同時,這種形式可以推廣到更多的Python代碼使用上。熟悉Python語句的審計人員,可以將日常收集到的代碼集合在后面,讓更好的經驗被更多的人應用。
在對某縣民政救助資金審計中,審計人員采集到的銀行發放花名冊是以月為單位存儲的。為了全面核對發放的人數和金額,審計人員需面對上百張結構相同的excel文件。在利用數據分析技術前,對這些文件的匯總、統計是一項重復而且繁瑣的任務。因此,審計組利用平臺中匯總的處理excel的Python代碼,在不打開文件的情況下查看文件結構,并進行簡單處理。具體步驟如下:
步驟一:獲得銀行發放花名冊表格,將所有帶匯總的文檔集中到一個文件夾,在功能菜單中,輸入數字“1”,Py?thon調用函數insert(),將進入查看excel文件里表格信息的功能。如圖6。
步驟二:Python代碼將文件夾下的所有文件進行編號,使用者選擇編號就可以選擇文件,避免了人工輸入出現錯誤的情況。通過Python代碼就可以一次性查到整個文件夾下的所有excel文件結構和前5行數據。如圖7。

圖7
Python具有腳本語言中最豐富和最強大的類庫,這些類庫覆蓋了文件輸入輸出、數據庫訪問、文本操作等絕大部分應用場景。案例基于Python交互代碼的使用,可以用來匯總好的代碼。例如:寫一段批量改文件名代碼,命名為 rename(),在本案例后添加 option_int==2:rename(),運行后就可以通過編號調用該代碼。
[圖片新聞]

為弘揚中華民族愛老敬老的傳統美德,咸豐縣審計局組織開展了重陽節“愛老三部曲”系列活動,為退休老干部送關懷、送溫暖、送健康。
(段寅雪 攝影報道)