แนะนำตัว
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")
ผลลัพธ์
ในทำนองเดียวกัน คุณสามารถเพิ่มค่าโดยใช้พิกัดเซลล์แทน 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/