Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

การอ่านและเขียนไฟล์ Excel โดยใช้โมดูล openpyxl ใน Python


แนะนำตัว

openpyxl เป็นไลบรารี Python สำหรับอ่าน/เขียนไฟล์ Excel 2010 xlsx/xlsm/xltx/xltm

มันเกิดจากการขาดไลบรารีที่มีอยู่เพื่ออ่าน/เขียนโดยกำเนิดจาก Python ในรูปแบบ Office Open XML

ไฟล์ excel ที่เราใช้ดำเนินการเรียกว่า Workbook ที่มีอย่างน้อยหนึ่งแผ่นและสูงสุดหลายสิบแผ่น

แผ่นงานหนึ่งประกอบด้วยแถวที่เริ่มต้นจาก 1 และคอลัมน์ที่เริ่มต้นจาก A

เมื่อใช้ไลบรารี openpxyl เราสามารถดำเนินการต่างๆ ได้ รวมถึงการเพิ่มชีตและข้อมูล จัดการและแม้กระทั่งลบข้อมูลดังกล่าว

ตอนนี้เรารู้แล้วว่าเรากำลังเผชิญกับอะไร เรามาเริ่มกันเลย

เริ่มต้นใช้งาน

openpyxl ไม่ได้มาพร้อมกับ Python ซึ่งหมายความว่าเราจะต้องดาวน์โหลดและติดตั้งโดยใช้ตัวจัดการแพ็คเกจ PIP ในการดำเนินการนี้ ให้ใช้เปิดเทอร์มินัลแล้วป้อนคำสั่งด้านล่าง

pip install openpyxl

เมื่อคุณดาวน์โหลดและติดตั้งไลบรารี่แล้ว เราจะต้องนำเข้าโมดูลต่างๆ เพื่อเริ่มทำงานกับไฟล์ excel

ให้เรานำเข้าโมดูลสมุดงานจากไลบรารี openpyxl ก่อน

from openpyxl import Workbook

ตอนนี้เราได้นำเข้าที่จำเป็นแล้ว เราก็สามารถสร้างและบันทึกข้อมูลลงในแผ่นงาน Excel โดยใช้โมดูลสมุดงานได้

การสร้างและบันทึกข้อมูลในไฟล์ excel

ขั้นแรก เราสร้างอินสแตนซ์ของคลาส Workbook()

wb = Workbook()

ต่อไป เรามาสร้างชีต

sheet = wb.active

ได้เวลาเริ่มเพิ่มข้อมูลแล้ว

sheet['A1'] = "Hello"
sheet['A2'] = "World!"
sheet['A3'] = 41.80
sheet['A4'] = 10

ตอนนี้เราได้เพิ่มเนื้อหาแล้ว ให้เราบันทึกและดูตัวอย่างไฟล์ที่เราสร้างขึ้น

wb.save("example.xlsx")

ผลลัพธ์

การอ่านและเขียนไฟล์ Excel โดยใช้โมดูล openpyxl ใน Python

ในทำนองเดียวกัน คุณสามารถเพิ่มค่าโดยใช้พิกัดเซลล์แทน A1 หรือ B1

sheet.cell(row=2, column=2).value = 5

สิ่งนี้จะเพิ่ม 5 ให้กับ B2

การอ่านข้อมูลจากไฟล์ Excel

ตอนนี้เราได้เรียนรู้วิธีเขียนข้อมูลลงในไฟล์ excel แล้ว ให้เราอ่านข้อมูลจากไฟล์ excel กัน

คราวนี้เราไม่จำเป็นต้องนำเข้าโมดูลสมุดงาน แค่นำเข้า openpyxl ก็พอ

import openpyxl

ในการอ่านจากไฟล์ เราต้องระบุตำแหน่งของไฟล์นั้นให้ผู้อ่านทราบก่อน

wb = openpyxl.load_workbook("example.xlsx")
sheet = wb.active

สิ่งนี้จะโหลดไฟล์ excel ตอนนี้เราเริ่มอ่านข้อมูลจากมันได้แล้ว

temp1 = sheet['A1']
temp2 = sheet['B1']
temp3 = sheet.cell(row = 3, column = 1)
temp4 = sheet.cell(row = 4, column = 1)
print(temp1.value, temp2.value, temp3.value, temp4.value)

ผลลัพธ์

Hello World! 41.8 10

ตัวอย่าง

from openpyxl import Workbook
import openpyxl

wb = Workbook()
sheet = wb.active
sheet['A1'] = "Hello"
sheet['B1'] = "World!"
sheet['A3'] = 41.80
sheet['A4'] = 10

wb.save("example.xlsx")

wb = openpyxl.load_workbook("example.xlsx")
sheet = wb.active
temp1 = sheet['A1']
temp2 = sheet['B1']
temp3 = sheet.cell(row = 3, column = 1)
temp4 = sheet.cell(row = 4, column = 1)
print(temp1.value, temp2.value, temp3.value, temp4.value)

บทสรุป

ตอนนี้คุณสามารถอ่านและเขียนไฟล์ excel โดยใช้ Python ได้แล้ว!

มีฟีเจอร์มากมายในไลบรารี openpyxl คุณสามารถเพิ่มข้อมูลหลายรายการพร้อมกัน สร้างแผนภูมิ แสดงสถิติ และอื่นๆ อีกมากมาย!

หากคุณสงสัยและต้องการเรียนรู้เพิ่มเติม โปรดดูเอกสารอย่างเป็นทางการที่ https://pypi.org/project/openpyxl/