国产成人精品亚洲777人妖,欧美日韩精品一区视频,最新亚洲国产,国产乱码精品一区二区亚洲

您的位置:首頁技術(shù)文章
文章詳情頁

python實現(xiàn)自動化之文件合并

瀏覽:105日期:2022-07-28 10:49:25

假如公司需要統(tǒng)計每個員工的個人信息,制定好模板后,由員工填寫,然后發(fā)送到綜合部進(jìn)行匯總,在這種情況下,如果公司有上百位員工的信息需要統(tǒng)計,且采用純手工進(jìn)行復(fù)制粘貼的方式進(jìn)行匯總,則將是一項耗時費(fèi)力易錯的工作。本文主要以一個簡單的小例子,簡述如何通過Pyhton進(jìn)行自動化文件合并。

涉及知識點 xlrd模塊:文件的讀取 xlwt模塊:文件的生成 設(shè)計思路

1、獲取指定目錄下所有excel格式的文件。2、循環(huán)讀取Excel文件內(nèi)容【讀取固定的行與列】,將內(nèi)容暫存內(nèi)存中。3、將內(nèi)存中數(shù)據(jù),寫入到新的Excel文件中,并保存到指定位置。

效果示例

本例為了簡化操作,總共有10個需要匯總的文件,如下所示:

python實現(xiàn)自動化之文件合并

每一個文件采用相同模板,格式一致,如下所示:

python實現(xiàn)自動化之文件合并

匯總后的文件,如下所示:

python實現(xiàn)自動化之文件合并

核心代碼

引入相關(guān)的模塊,如下所示:

import xlrdimport xlwtimport os

讀取excel內(nèi)容,如下所示:

def read_excel(excel_folder: str): ''' 讀取Excel文檔 :param excel_folder: :return: ''' excel_files = [] # excel文件列表 excel_contents = [] # excel文件內(nèi)容 files = os.listdir(path=excel_folder) if len(files) > 0:for file in files: if file.endswith(’.xls’):excel_files.append(file) if len(excel_files) == 0:print(’此目錄下沒有對應(yīng)的Excel文件’) # 循環(huán)讀取文檔 for file in excel_files:full_path = os.path.join(excel_folder, file)book = xlrd.open_workbook(filename=full_path)sheet = book.sheet_by_index(sheetx=0)# 取固定位置的值content = { ’名稱’: sheet.cell_value(1, 0), ’年紀(jì)’: sheet.cell_value(1, 1), ’性別’: sheet.cell_value(1, 2), ’籍貫’: sheet.cell_value(1, 3)}excel_contents.append(content) return excel_contents

生成Excel內(nèi)容,如下所示:

def write_excel(excel_path: str, excel_contents: list): ''' 生成Excel文檔 :param excel_path: :return: ''' if len(excel_contents) == 0:print(’沒有需要保存的內(nèi)容’)return book = xlwt.Workbook(encoding=’utf-8’) sheet1 = book.add_sheet(’統(tǒng)計信息’) # 先寫標(biāo)題 sheet1.write(0, 0, ’名稱’) sheet1.write(0, 1, ’年紀(jì)’) sheet1.write(0, 2, ’性別’) sheet1.write(0, 3, ’籍貫’) i = 1 for content in excel_contents:sheet1.write(i, 0, content[’名稱’])sheet1.write(i, 1, content[’年紀(jì)’])sheet1.write(i, 2, content[’性別’])sheet1.write(i, 3, content[’籍貫’])i += 1 book.save(excel_path)

整體調(diào)用

excel_folder = r’D:MyProjectDemo01TESTEXCEL’excel_path = r’D:MyProjectDemo01TESTEXCEL匯總信息.xls’excel_contents = read_excel(excel_folder)# print(excel_contents)write_excel(excel_path, excel_contents)print(’done’)

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。

標(biāo)簽: Python 編程
相關(guān)文章:
主站蜘蛛池模板: 天门市| 华阴市| 亚东县| 东丽区| 江源县| 广平县| 仙居县| 乐陵市| 丰原市| 共和县| 张家界市| 临江市| 凤山市| 旌德县| 宝应县| 定边县| 黎城县| 兴文县| 边坝县| 六安市| 三门县| 阿拉善盟| 专栏| 东丽区| 营口市| 根河市| 宣武区| 出国| 临沧市| 湘潭县| 上饶市| 龙海市| 宁蒗| 广昌县| 玛曲县| 佳木斯市| 南和县| 汶上县| 武汉市| 深水埗区| 靖宇县|