主頁 > 知識(shí)庫 > python實(shí)現(xiàn)自動(dòng)化之文件合并

python實(shí)現(xiàn)自動(dòng)化之文件合并

熱門標(biāo)簽:成都呼叫中心外呼系統(tǒng)哪家強(qiáng) 地圖標(biāo)注與注銷 南昌地圖標(biāo)注 旅游廁所地圖標(biāo)注怎么弄 電梯新時(shí)達(dá)系統(tǒng)外呼顯示e 宿州電話機(jī)器人哪家好 無錫智能外呼系統(tǒng)好用嗎 百應(yīng)電話機(jī)器人總部 西青語音電銷機(jī)器人哪家好

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

涉及知識(shí)點(diǎn)

  • xlrd模塊:文件的讀取
  • xlwt模塊:文件的生成

設(shè)計(jì)思路

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

效果示例

本例為了簡(jiǎn)化操作,總共有10個(gè)需要匯總的文件,如下所示:

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

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

核心代碼

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

import xlrd
import xlwt
import 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('此目錄下沒有對(duì)應(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)計(jì)信息')
    # 先寫標(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:\MyProject\Demo01\TESTEXCEL'
excel_path = r'D:\MyProject\Demo01\TESTEXCEL\匯總信息.xls'
excel_contents = read_excel(excel_folder)
# print(excel_contents)
write_excel(excel_path, excel_contents)
print('done')

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

您可能感興趣的文章:
  • 一篇文章告訴你如何用Python控制Excel實(shí)現(xiàn)自動(dòng)化辦公
  • python開發(fā)的自動(dòng)化運(yùn)維工具ansible詳解
  • 基于python實(shí)現(xiàn)微信收紅包自動(dòng)化測(cè)試腳本(測(cè)試用例)
  • python自動(dòng)化八大定位元素講解
  • 一篇文章告訴你如何用python進(jìn)行自動(dòng)化測(cè)試,調(diào)用c程序

標(biāo)簽:雅安 辛集 濰坊 贛州 渭南 七臺(tái)河 許昌 西安

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《python實(shí)現(xiàn)自動(dòng)化之文件合并》,本文關(guān)鍵詞  python,實(shí)現(xiàn),自動(dòng)化,之,文件,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《python實(shí)現(xiàn)自動(dòng)化之文件合并》相關(guān)的同類信息!
  • 本頁收集關(guān)于python實(shí)現(xiàn)自動(dòng)化之文件合并的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章