อ่านข้อมูลในไฟล์ Excel โดยใช้ Python

MS Excel มอบวิธีที่สะดวกในการเก็บรักษาและแบ่งปันข้อมูลในรูปแบบของแถวและคอลัมน์ บ่อยครั้งที่ไฟล์ Excel ถูกใช้เพื่อจัดเก็บชุดข้อมูลขนาดใหญ่ที่มีบันทึกเป็นร้อยเป็นพันรายการ ขณะทำงานกับไฟล์ Excel ใน Python คุณอาจต้องอ่านข้อมูลจากแต่ละเซลล์ในแผ่นงาน บทความนี้แสดงวิธีอ่านไฟล์ Excel ใน Python คุณจะได้เรียนรู้วิธีการอ่านข้อมูลจากแผ่นงานเดียวหรือแผ่นงานทั้งหมดในสมุดงาน Excel

Python Library เพื่ออ่านไฟล์ Excel

ในการอ่านข้อมูลจากสมุดงาน เราจะใช้ Aspose.Cells for Python via Java เป็นไลบรารี Python ที่ทรงพลังและมีฟีเจอร์มากมายสำหรับสร้างไฟล์ MS Excel นอกจากนี้ยังช่วยให้คุณอ่านและจัดการไฟล์ Excel ที่มีอยู่ได้อย่างราบรื่น คุณสามารถ ดาวน์โหลด ไลบรารีหรือติดตั้งโดยใช้คำสั่ง pip ต่อไปนี้

pip install aspose-cells

อ่านไฟล์ Excel ใน Python

ก่อนที่เราจะเริ่มอ่านข้อมูล เรามาดูภาพรวมของวิธีจัดการข้อมูลในไฟล์ Excel กันก่อน ไฟล์ Excel เรียกว่าเวิร์กบุ๊กที่ทำหน้าที่เป็นคอนเทนเนอร์ แต่ละเวิร์กบุ๊กมีเวิร์กชีตตั้งแต่หนึ่งเวิร์กชีตขึ้นไป และทุกเวิร์กชีตประกอบด้วยเซลล์จำนวนหนึ่ง เซลล์เหล่านี้จะถูกระบุโดยแถวและคอลัมน์โดยไม่ซ้ำกัน ดังนั้น ในการอ่านข้อมูลจากเซลล์ คุณจำเป็นต้องทราบดัชนีแถวและคอลัมน์

ต่อไปนี้เป็นขั้นตอนในการอ่านไฟล์ Excel และพิมพ์ข้อมูลใน Python

  • โหลดไฟล์ Excel โดยใช้คลาส Workbook
  • รับการอ้างอิงของ WorksheetCollection โดยใช้เมธอด Workbook.getWorksheets()
  • วนซ้ำเวิร์กชีตในคอลเลกชันและในการวนซ้ำแต่ละครั้ง ให้ทำตามขั้นตอนต่อไปนี้:
    • รับการอ้างอิงแผ่นงานในวัตถุ
    • รับจำนวนแถวและคอลัมน์ข้อมูลในแผ่นงาน
    • เริ่มวนซ้ำสำหรับแถว
    • เริ่มการวนซ้ำที่ซ้อนกันสำหรับคอลัมน์
    • อ่านข้อมูลจากแต่ละเซลล์โดยใช้เมธอด Worksheet.getCells().get(rowIndex, columnIndex).getValue()

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการอ่านไฟล์ Excel ใน Python

# โหลดสมุดงาน Excel
wb = Workbook("workbook.xlsx")

# รับคอลเลกชันแผ่นงาน
collection = wb.getWorksheets()
collectionCount = collection.getCount()

# วนรอบแผ่นงานทั้งหมด
for worksheetIndex in range(collectionCount):

    # รับแผ่นงานโดยใช้ดัชนี
    worksheet = collection.get(worksheetIndex)

    # พิมพ์ชื่อแผ่นงาน
    print("Worksheet: " + str(worksheet.getName()))

    # รับจำนวนแถวและคอลัมน์
    rows = worksheet.getCells().getMaxDataRow()
    cols = worksheet.getCells().getMaxDataColumn()

    # วนซ้ำเป็นแถว
   for i in range(rows):

        # วนซ้ำแต่ละคอลัมน์ในแถวที่เลือก
       for j in range(cols):
            # พิมพ์ค่าเซลล์
            print(worksheet.getCells().get(i, j).getValue(), end =" | ")

        # พิมพ์ตัวแบ่งบรรทัด
        print("\n")

ต่อไปนี้เป็นผลลัพธ์ที่เราได้รับหลังจากรันตัวอย่างโค้ดด้านบน

การอ่านข้อมูลในแผ่นงานของไฟล์ Excel ในภาษา Python

การอ่านไฟล์ Excel ใน Python

อ่านแผ่นงานเฉพาะใน Excel ใน Python

คุณยังสามารถอ่านแผ่นงานเฉพาะในไฟล์ Excel ได้โดยทำตามขั้นตอนด้านล่าง

  • โหลดไฟล์ Excel โดยใช้คลาส Workbook
  • รับการอ้างอิงแผ่นงานที่ต้องการโดยใช้เมธอด Workbook.getWorksheets().get(index)
  • รับจำนวนแถวและคอลัมน์ข้อมูลในแผ่นงาน
  • เริ่มวนซ้ำสำหรับแถว
  • เริ่มการวนซ้ำที่ซ้อนกันสำหรับคอลัมน์
  • อ่านข้อมูลจากแต่ละเซลล์โดยใช้เมธอด Worksheet.getCells().get(rowIndex, columnIndex).getValue()

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการอ่านข้อมูลจากแผ่นงานเฉพาะใน Python

# โหลดสมุดงาน Excel
wb = Workbook("workbook.xlsx")

# รับคอลเลกชันแผ่นงาน
worksheet = wb.getWorksheets().get(0)   

# พิมพ์ชื่อแผ่นงาน
print("Worksheet: " + str(worksheet.getName()))

# รับจำนวนแถวและคอลัมน์
rows = worksheet.getCells().getMaxDataRow()
cols = worksheet.getCells().getMaxDataColumn()

# วนซ้ำเป็นแถว
for i in range(rows):

    # วนซ้ำแต่ละคอลัมน์ในแถวที่เลือก
   for j in range(cols):
        # พิมพ์ค่าเซลล์
        print(worksheet.getCells().get(i, j).getValue(), end =" | ")

    # พิมพ์ตัวแบ่งบรรทัด
    print("\n")

รับใบอนุญาต API ฟรี

คุณสามารถใช้ Aspose.Cells for Python ผ่าน Java ได้โดยไม่มีข้อจำกัดในการประเมินโดยขอ ใบอนุญาตชั่วคราวฟรี

บทสรุป

ในบทความนี้ คุณได้เรียนรู้วิธีการอ่านไฟล์ Excel ใน Python นอกจากนี้ คุณได้เห็นวิธีการอ่านข้อมูลจากแผ่นงานใดแผ่นหนึ่งหรือแผ่นงานทั้งหมดในสมุดงาน Excel คุณสามารถสำรวจเพิ่มเติมเกี่ยวกับไลบรารีสเปรดชีต Python โดยใช้ เอกสารประกอบ ในกรณีที่คุณมีคำถามหรือข้อสงสัยใดๆ โปรดแจ้งให้เราทราบผ่านทาง ฟอรัม ของเรา

ดูสิ่งนี้ด้วย