Bagaimana untuk mengautomasikan Excel menggunakan Python?

WBOY
Lepaskan: 2023-05-07 23:04:27
ke hadapan
2199 orang telah melayarinya

1. Perpustakaan yang biasa digunakan untuk mengendalikan Excel dengan 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

1. Gunakan perpustakaan pihak ketiga openpyxl

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')
Salin selepas log masuk

2 Gunakan perpustakaan pihak ketiga xlrd dan xlwt

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')
Salin selepas log masuk

3 Gunakan perpustakaan panda

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)
Salin selepas log masuk

2. 10 cara biasa untuk mengendalikan excel dalam Python

1. Baca fail Excel

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')
Salin selepas log masuk

2 Tulis ke fail Excel

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)
Salin selepas log masuk

3 Sisipkan baris atau lajur

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]
Salin selepas log masuk

4 Padam baris atau lajur

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)
Salin selepas log masuk

5 Ubah suai nilai sel

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
Salin selepas log masuk

6 Cari nilai sel

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]
Salin selepas log masuk

7 Isih data

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')
Salin selepas log masuk

8 Menggabungkan data

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')
Salin selepas log masuk

9 Kumpulan data

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'])
Salin selepas log masuk

10 Kira statistik data

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()
Salin selepas log masuk

Atas ialah kandungan terperinci Bagaimana untuk mengautomasikan Excel menggunakan Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:yisu.com
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan