excel數據處理二:快速完成openpyxl數據的新增、修改!


接着上一章的內容繼續來說,上一章內容說完了關於openpyxl對數據的提取、篩選等數據的查詢的遍歷操作。這一章將主要看看怎樣在excel文件中新增以及修改數據,如果沒有看過前一章的內容建議先看看上一篇文章的說明。

file

【閱讀全文】

導入excel的數據處理對象

from openpyxl import load_workbook

創建新的sheet工作表

workbook = load_workbook(filename = "./data.xlsx")

workbook.create_sheet("新創建的工作表sheet")

print(workbook.sheetnames)

workbook.save(filename = "./new_data.xlsx")

刪除工作表

workbook.remove(workbook['新創建的工作表sheet'])  # 將新創建的工作表刪除

復制工作表並重新保存

workbook = load_workbook(filename = "./data.xlsx") # 加載excel文件
sheet = workbook['Sheet1']  # 獲取Sheet1工作表對象
workbook.copy_worksheet(sheet)  # 復制這個工作表到excel文件對象
workbook.save(filename = "./new_data.xlsx")  # 將該文件文件重新保存到另外一個文件

向單元格中寫入內容

workbook = load_workbook(filename = "./data.xlsx")  # 加載excel文件

sheet = workbook['Sheet1']  # 獲取工作表對象

cell = sheet["A1"]  # 獲取單元格對象

cell.value = 'Python 集中營'  # 向單元格寫入數據

workbook.save(filename = "./new_data.xlsx")  # 將修改后的excel文件對象另存為新的文件

按行插入數據

'''
append(row)  將行數據追加到已有excel數據表的后面
row:行數據對象
'''

row_datas = [
    ['Python 集中營','原創文章:167篇','注冊時間:2020-04-01'],
    ['Python 集中營','原創文章:167篇','注冊時間:2020-04-01']
]

for row_data in row_datas:  # 遍歷准備好的數據
    sheet.append(row_data)  # 將每行數據加入到sheet工作表中

插入空的一行或空的一列

'''
insert_cols(idx=數字編號, amount=要插入的列數) 在idx的左邊插入空列
insert_rows(idx=數字編號, amount=要插入的行數) 在idx的下邊插入空行
'''

sheet.insert_cols(idx=1,amount=10)  # 在第一列的左邊插入十個空列
sheet.insert_rows(idx=2,amount=10)  # 在第二行的下邊插入十個空行

刪除第幾行或第幾列

'''
delete_cols(idx=數字編號) 刪除第幾列
delete_rows(idx=數字編號) 刪除第幾行
'''
sheet.delete_cols(idx=10)  # 刪除第十列
sheet.delete_rows(idx=10)  # 刪除第十行

數據域的移動

'''
sheet.move_range("數據域",rows=數字編號,cols=數字編號)
'''

sheet.move_range("A1:C2",rows=1,cols=2)  # 從A1:C2的數據域向下移動一行、向左移動兩列,如果是負數則向相反的方向移動

關於openpyxl設置單元格的樣式問題,在之前專門寫過一篇文章是它的樣式的配置,可以到公眾號的文章搜索功能去搜索'openpyxl樣式'。

file

【往期精彩】

● excel數據處理一:巧妙使用openpyxl提取、篩選數據

● 比Selenium更方便的自動化測試工具Helium!

● Python數據可視化:可視化數據分析插件D-Tale

● 計算速度太慢?試試 lru_cache 裝飾器!

● 冒泡排序、選擇排序之間的比較與代碼實現!

● 如何通過pynput與日志記錄實現鍵盤、鼠標的監聽行為?

● 辦公自動化:幾行代碼將PDF文檔轉換為WORD文檔(代碼實戰)!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM