在開始操作 Excel 之前,你需要先安裝 Python 和一些相關函式庫。可以使用 pip 安裝以下函式庫,或使用專業的 python 用戶端:pycharm,快速安裝 python 和相關函式庫。
pandas:用於處理Excel 檔案和資料
#openpyxl:用於讀取和寫入Excel 檔案
xlrd:用於讀取Excel 檔案
xlwt:用於寫入Excel 檔案
openpyxl 是用於讀寫Excel 2010 xlsx/xlsm/xltx/xltm 檔案的Python 函式庫。它可以讀取和寫入 Excel 文件,支援多個工作表、圖表等。
範例程式碼:
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 和xlwt 分別用於讀取和寫入Excel 文件,支援多個工作表,但不支援Excel 2010 xlsx/xlsm/xltx/xltm 格式。
範例程式碼:
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 是一個用於資料分析的Python 函式庫,也可以用來讀寫Excel 文件,支援多個工作表,但不支援Excel 2010 xlsx/xlsm/xltx/xltm 格式。
範例程式碼:
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)
使用pandas 庫中的read_excel ()函數可以讀取Excel 檔案。範例程式碼如下:
import pandas as pd # 读取Excel文件 df = pd.read_excel('example.xlsx')
使用 pandas 函式庫中的 to_excel()函數可以將資料寫入 Excel 檔案。範例程式碼如下:
import pandas as pd # 将数据写入Excel文件 df.to_excel('example.xlsx', index=False)
使用 pandas 函式庫中的 append()函數可以插入行或列。範例程式碼如下:
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]
使用 pandas 函式庫中的 drop()函數可以刪除行或列。範例程式碼如下:
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)
使用 pandas 庫中的 at()函數或.iat()函數可以修改單元格的值。範例程式碼如下:
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
使用 pandas 函式庫中的.loc()函數或.iloc()函數可以找出儲存格的值。範例程式碼如下:
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]
使用 pandas 函式庫中的 sort_values()函數可以對資料進行排序。範例程式碼如下:
import pandas as pd # 对数据进行排序 df = pd.DataFrame({'A': [1, 3, 2], 'B': [4, 6, 5]}) df = df.sort_values(by='A')
使用 pandas 函式庫中的 merge()函數可以合併資料。範例程式碼如下:
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')
使用 pandas 函式庫中的 groupby()函數可以將資料分組。範例程式碼如下:
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'])
使用 pandas 函式庫中的 describe()函數可以計算資料的統計量。範例程式碼如下:
import pandas as pd # 计算数据统计量 df = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6]}) desc = df.describe()
以上是如何使用Python進行Excel自動化操作?的詳細內容。更多資訊請關注PHP中文網其他相關文章!