Beberapa hari lepas dalam kumpulan pertukaran platinum, ada seorang bernama [? ? ?? ] peminat bertanya soalan mengenai pejabat automatik Python dalam kumpulan pertukaran Python Pada pandangan pertama, ia kelihatan sangat mudah, tetapi sebenarnya ia adalah sukar seperti yang ditunjukkan dalam rajah di bawah.
Jika anda mengikut idea konvensional, mula-mula buka jadual Excel, kemudian tambah dalam lajur terakhir daripada jadual Sepadan dengan nama jadual, jika ia hanya jadual dan kandungan jadual hanya mempunyai satu baris, operasi ini boleh dilakukan dengan membahagi tiga dengan lima dan membahagi dua. Tetapi jika anda menemui banyak jadual, ia akan menjadi sangat memenatkan jika anda terus memprosesnya satu persatu.
Tetapi di sini saya akan memperkenalkan kepada anda kaedah menggunakan Python untuk mengautomasikan kerja pejabat untuk membantu anda menyelesaikan masalah dan memastikan tiada kesilapan yang akan berlaku dalam masa beberapa saat.
Sebenarnya [? ??] juga cuba menggunakan Python untuk menyelesaikannya, tetapi menghadapi beberapa masalah Walaupun fail Excel telah dibuat, penulisan nama lajur berikutnya gagal, dan dia akhirnya perlu Untuk menggabungkan jadual Excel, sebenarnya terdapat dua keperluan di sini.
Kod yang disediakan oleh [?(Ini adalah bahagian belakang bulan] bos] diberikan di sini . Idea umum sebenarnya sama, tetapi kaedah pelaksanaannya menggunakan program Python, dan kecekapannya sangat berbeza!
# coding: utf-8 # 给每个excel中的sheet增加一列,值为excel名.xlsx from pathlib import Path import pandas as pd path = Path(r'E:PythonCrawlerpython_crawler-masterMergeExcelSheetfile777') excel_list = [(i.stem, pd.concat(pd.read_excel(i, sheet_name=None))) for i in path.glob("*.xls*")] data_list = [] for name, data in excel_list: print(name) print(data) data['表名'] = name data_list.append(data) result = pd.concat(data_list, ignore_index=True) result.to_excel(path.joinpath('给每个excel中的sheet增加一列,值为excel名.xlsx'), index=False, encoding='utf-8') print('添加和合并完成!')
i.stem bermaksud mendapatkan nama fail, tidak termasuk nod induk dan akhiran, contohnya D:/Desktop/test.txt, i.stem ialah ujian!
# coding: utf-8 # 给每个excel中的sheet增加一列,值为excel名-sheet名.xlsx from pathlib import Path import pandas as pd path = Path(r'E:PythonCrawlerpython_crawler-masterMergeExcelSheetfile777') excel_list = [(i.stem, pd.concat(pd.read_excel(i, sheet_name=None))) for i in path.glob("*.xls*")] data_list = [] for name, data in excel_list: print(name) print(data) data['表名'] = name data.reset_index(level=0, inplace=True) # 重置level_0索引 data_list.append(data) result = pd.concat(data_list, ignore_index=True) result['表名'] = result['表名'] + '-' + result['level_0'] # 更改列值 del result['level_0'] # 删除多余列 result.to_excel(path.joinpath('给每个excel中的sheet增加一列,值为excel名-sheet名.xlsx'), index=False, encoding='utf-8') print('添加和合并完成!')
Selepas itu, setiap jadual Excel juga mempunyai nama lajur yang sepadan dengan nama jadual dan. fungsi gabungan semua jadual juga dilaksanakan, seperti yang ditunjukkan dalam rajah di bawah
Jika anda berminat dengan pengetahuan penggabungan Excel, anda boleh klik pada artikel ini untuk mengetahui: Inventori. daripada 4 cara menggunakan Python untuk menggabungkan semua data Helaian dalam fail Excel di bawah semua subfolder dalam folder yang sama, penuh dengan maklumat berguna Oh!
4. Ringkasan
Saya pengguna lanjutan Python . Berdasarkan soalan peminat tentang pejabat automatik Python, artikel ini menyediakan penyelesaian menggunakan asas Python + pemprosesan fail panda, yang sepenuhnya Memenuhi keperluan peminat dan menjimatkan banyak masa
Atas ialah kandungan terperinci Ajar anda langkah demi langkah cara menggunakan Python untuk menambah lajur baharu dalam Excel secara berkumpulan, dan kandungannya ialah nama jadual Excel. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!