Rumah > Artikel > pembangunan bahagian belakang > Bagaimana untuk mengautomasikan Excel menggunakan Python?
Sebelum anda mula mengendalikan Excel, anda perlu memasang Python dan beberapa perpustakaan yang berkaitan. Anda boleh menggunakan pip untuk memasang perpustakaan berikut, atau gunakan klien python profesional: pycharm untuk memasang python dan perpustakaan berkaitan dengan cepat.
pandas: untuk memproses fail dan data Excel
openpyxl: untuk membaca dan menulis fail Excel
xlrd: digunakan untuk membaca fail Excel
xlwt: digunakan untuk menulis fail Excel
openpyxl ialah perpustakaan Python untuk membaca dan menulis fail xlsx/xlsm/xltx/xltm Excel 2010. Ia boleh membaca dan menulis fail Excel, menyokong berbilang lembaran kerja, carta dan banyak lagi.
Kod contoh:
import openpyxl # 打开 Excel 文件 workbook = openpyxl.load_workbook('example.xlsx') # 获取所有工作表名 sheet_names = workbook.sheetnames print(sheet_names) # 获取指定工作表 sheet = workbook['Sheet1'] # 获取单元格数据 cell = sheet['A1'] print(cell.value) # 修改单元格数据 sheet['A1'] = 'Hello World' # 保存 Excel 文件 workbook.save('example.xlsx')
xlrd dan xlwt digunakan untuk membaca dan menulis fail Excel masing-masing, menyokong berbilang lembaran kerja , tetapi Excel 2010 xlsx/xlsm/xltx/xltm format tidak disokong.
Kod contoh:
import xlrd import xlwt # 打开 Excel 文件 workbook = xlrd.open_workbook('example.xls') # 获取所有工作表名 sheet_names = workbook.sheet_names() print(sheet_names) # 获取指定工作表 sheet = workbook.sheet_by_name('Sheet1') # 获取单元格数据 cell = sheet.cell(0, 0) print(cell.value) # 修改单元格数据 new_workbook = xlwt.Workbook() new_sheet = new_workbook.add_sheet('Sheet1') new_sheet.write(0, 0, 'Hello World') new_workbook.save('example.xls')
pandas ialah perpustakaan Python untuk analisis data Ia juga boleh digunakan untuk membaca dan menulis fail Excel berbilang Lembaran Kerja, tetapi format Excel 2010 xlsx/xlsm/xltx/xltm tidak disokong.
Kod contoh:
import pandas as pd # 读取 Excel 文件 df = pd.read_excel('example.xls', sheet_name='Sheet1') # 获取单元格数据 value = df.iloc[0, 0] print(value) # 修改单元格数据 df.iloc[0, 0] = 'Hello World' df.to_excel('example.xls', index=False)
Gunakan read_excel dalam perpustakaan panda (. ) fungsi boleh membaca fail Excel. Kod sampel adalah seperti berikut:
import pandas as pd # 读取Excel文件 df = pd.read_excel('example.xlsx')
Gunakan fungsi to_excel() dalam pustaka panda untuk menulis data ke fail Excel. Kod sampel adalah seperti berikut:
import pandas as pd # 将数据写入Excel文件 df.to_excel('example.xlsx', index=False)
Gunakan fungsi append() dalam pustaka panda untuk memasukkan baris atau lajur. Kod sampel adalah seperti berikut:
import pandas as pd # 插入行 df = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6]}) df = df.append({'A': 4, 'B': 7}, ignore_index=True) # 插入列 df['C'] = [7, 8, 9, 10]
Gunakan fungsi drop() dalam pustaka panda untuk memadamkan baris atau lajur. Kod sampel adalah seperti berikut:
import pandas as pd # 删除行 df = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6]}) df = df.drop(1) # 删除列 df = df.drop('B', axis=1)
Gunakan fungsi at() atau .iat() dalam pustaka panda untuk mengubah suai nilai sel. Kod sampel adalah seperti berikut:
import pandas as pd # 修改单元格值 df = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6]}) df.at[1, 'B'] = 7 # 使用.iat()函数修改单元格值 df.iat[0, 1] = 8
Gunakan fungsi .loc() atau .iloc() dalam pustaka panda untuk mencari nilai sel. . Kod sampel adalah seperti berikut:
import pandas as pd # 查找单元格值 df = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6]}) value = df.loc[1, 'B'] # 使用.iloc()函数查找单元格值 value = df.iloc[1, 1]
Gunakan fungsi sort_values() dalam pustaka panda untuk mengisih data. Kod sampel adalah seperti berikut:
import pandas as pd # 对数据进行排序 df = pd.DataFrame({'A': [1, 3, 2], 'B': [4, 6, 5]}) df = df.sort_values(by='A')
Gunakan fungsi merge() dalam perpustakaan panda untuk menggabungkan data. Kod sampel adalah seperti berikut:
import pandas as pd # 合并数据 df1 = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6]}) df2 = pd.DataFrame({'A': [1, 2, 4], 'C': [7, 8, 9]}) df = pd.merge(df1, df2, on='A')
Gunakan fungsi groupby() dalam perpustakaan panda untuk mengumpulkan data. Kod sampel adalah seperti berikut:
import pandas as pd # 分组数据 df = pd.DataFrame({'A': ['foo', 'bar', 'foo', 'bar', 'foo', 'bar', 'foo', 'foo'], 'B': ['one', 'one', 'two', 'three', 'two', 'two', 'one', 'three'], 'C': [1, 2, 3, 4, 5, 6, 7, 8]}) grouped = df.groupby(['A', 'B'])
Gunakan fungsi describe() dalam perpustakaan panda untuk mengira statistik data. Kod sampel adalah seperti berikut:
import pandas as pd # 计算数据统计量 df = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6]}) desc = df.describe()
Atas ialah kandungan terperinci Bagaimana untuk mengautomasikan Excel menggunakan Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!