푸터 콘텐츠로 바로가기
IRONXL FOR PYTHON 사용하기

Python에서 Excel 파일 읽는 방법

Excel 파일을 다루는 것은 데이터 분석 및 자동화 작업에서 일반적인 요구 사항입니다. Python은 광범위한 라이브러리 세트와 함께 XLSX 파일을 다루는 다양한 방법을 제공합니다. 이 튜토리얼에서는 IronXL, Python Excel 라이브러리를 사용하여 Excel 파일을 읽는 방법을 배울 것입니다.

IronXL: Python Excel 라이브러리

IronXL for Python은 개발자들이 Python에서 Excel 파일을 쉽게 읽고 쓰도록 설계되었습니다. Excel 파일을 쓸 수 있을 뿐만 아니라, 단번에 여러 Excel 시트를 다룰 수 있습니다. 이 라이브러리는 컴퓨터에 Microsoft Excel을 설치하지 않고도 Excel 파일을 작성하는 데 완벽합니다.

Excel 스프레드시트에 데이터를 직접 가져와야 할 때 IronXL이 도움을 줍니다. IronXL은 Excel 스프레드시트 작업을 간단하게 만듭니다. XLSX 파일의 여러 시트에 걸쳐 데이터를 쉽게 관리하는 데 도움이 됩니다.

IronXL을 사용하여 Python에서 Excel 파일을 읽는 방법을 알아봅시다.

Python에서 Excel 파일을 읽는 방법

다음 단계는 Python에서 Excel 파일을 읽는 과정에 대해 설명합니다.

  1. Visual Studio 코드에서 Python 파일을 생성하세요.
  2. pip을 사용하여 Python Excel 라이브러리를 설치하세요.
  3. 읽어야 할 Excel 파일을 로드하세요.
  4. 루프를 사용하여 Excel 데이터를 반복하세요.
  5. 반복된 데이터를 콘솔에 표시하세요.

필수 조건

튜토리얼에 들어가기에 앞서, 시스템에 다음과 같은 필수 설치 항목들이 있는지 확인하세요:

  • .NET 6.0 SDK: IronXL은 .NET 기반으로, .NET 6.0 SDK가 시스템에 설치되어야 합니다.
  • Python 3.0+: 이 튜토리얼은 Python 3.0 이상이 설치되어 있다고 가정합니다.
  • pip: IronXL 설치에 사용할 Python의 패키지 관리자 pip이 설치되어 있는지 확인하세요.

환경 설정하기

1. Visual Studio Code에서 파일 생성

Visual Studio 코드에서 ReadExcel.py라는 새 Python 파일을 생성하세요. 이 파일에는 IronXL을 사용하여 Excel 파일을 읽는 스크립트가 포함됩니다.

Python에서 Excel 파일 읽기: 그림 1

2. IronXL 설치

메뉴에서 Terminal > New Terminal을 선택하여 Visual Studio Code 내에서 명령줄을 엽니다.

Python에서 Excel 파일 읽기: 그림 2

다음 명령을 실행하여 IronXL을 설치하세요:

pip install ironxl
pip install ironxl
SHELL

Python에서 Excel 파일 읽기: 그림 3

코드 작성하기

이제 코드를 섹션별로 나누고 각 부분을 설명하겠습니다.

라이브러리 가져오기

from ironxl import *
import sys
from ironxl import *
import sys
PYTHON

여기서 Excel 파일 작업 기능을 제공하는 ironxl 라이브러리에서 모든 것을 가져옵니다. sys는 IronXL이 올바르게 작동하려면 필요한 Python이 설치된 경로를 설정하는 데 사용됩니다.

Python 설치 경로 설정

sys.prefix = r'C:\Users\User Name\AppData\Local\Programs\Python\Python312'
sys.prefix = r'C:\Users\User Name\AppData\Local\Programs\Python\Python312'
PYTHON

sys.prefix에는 Python 설치 디렉터리의 경로가 할당됩니다. 이 준비 단계는 모든 환경에서 필요하지 않을 수 있지만, 일부 구성에서는 경로 관련 문제를 방지하기 위해 필수적입니다.

라이선스 키 설정

License.LicenseKey = "License-Key"
License.LicenseKey = "License-Key"
PYTHON

IronXL 라이브러리는 모든 기능을 잠금 해제하기 위해 유효한 라이선스 키가 필요합니다. 이 코드 줄 License.LicenseKey = "License-Key"은 얻은 라이선스 키를 삽입하는 곳입니다. 유효한 라이선스가 없으면 IronXL은 작동하지 않습니다.

워크북 로드

workbook = WorkBook.Load("data.xlsx")
workbook = WorkBook.Load("data.xlsx")
PYTHON

이 스크립트 섹션 workbook = WorkBook.Load("data.xlsx")은 Excel 워크북을 로드하는 방법을 보여줍니다. WorkBook.Load는 IronXL이 제공하는 메서드로, 파일 경로로 지정된 기존 Excel 파일을 엽니다.

이 예제는 "data.xlsx"를 사용하며, 이 파일이 스크립트와 동일한 디렉터리에 있다고 가정합니다. 파일이 다른 곳에 있다면 전체 파일 경로를 제공해야 합니다.

워크시트 선택

worksheet = workbook.WorkSheets[0]
worksheet = workbook.WorkSheets[0]
PYTHON

워크북을 로드한 후 다음 단계는 워크시트를 선택하는 것입니다. workbook.WorkSheets[0] 줄은 Excel 파일의 첫 번째 워크시트를 접근합니다. 워크시트는 0부터 인덱스가 지정되므로 이 코드 스니펫은 첫 번째 시트를 효과적으로 선택합니다.

데이터 읽기 및 표시

print("Sample data from A2:A5:")
for cell in worksheet["A2:A5"]:
    print("Cell {} has value '{}'".format(cell.AddressString, cell.Text))
print("Sample data from A2:A5:")
for cell in worksheet["A2:A5"]:
    print("Cell {} has value '{}'".format(cell.AddressString, cell.Text))
PYTHON

이 스크립트의 이 부분은 특정 셀에서 데이터를 읽고 표시하는 방법을 설명합니다. for the cells in the worksheet["A2:A5"]에서 셀 범위를 반복함으로써 각 셀의 주소와 텍스트 값을 접근합니다. 시트 내의 미리 정해진 영역에서 정보를 검색할 수 있습니다.

계산 수행

IronXL은 Excel 시트 내의 데이터 범위에서 직접 간단한 계산을 수행할 수 있도록 기능을 제공합니다. 코드의 다음 섹션은 지정된 범위 내의 데이터에 대해 합계, 최소값, 최대값과 같은 간단한 계산을 수행하는 방법을 보여줍니다.

total_sum = worksheet["B2:B10"].Sum()
print("Total Sum of B2:B10: ", total_sum)

minimum_value = worksheet["C2:C10"].Min()
print("Minimum Value in C2:C10: ", minimum_value)

maximum_value = worksheet["D2:D10"].Max()
print("Maximum Value in D2:D10: ", maximum_value)
total_sum = worksheet["B2:B10"].Sum()
print("Total Sum of B2:B10: ", total_sum)

minimum_value = worksheet["C2:C10"].Min()
print("Minimum Value in C2:C10: ", minimum_value)

maximum_value = worksheet["D2:D10"].Max()
print("Maximum Value in D2:D10: ", maximum_value)
PYTHON

고유 값 찾기

이 스크립트 부분은 Excel 시트의 지정된 범위 내에서 고유 값을 식별하는 방법을 보여줍니다:

unique_values = set(cell.Text for cell in worksheet["F2:F10"])
print("Unique Values in F2:F10: ", unique_values)
unique_values = set(cell.Text for cell in worksheet["F2:F10"])
print("Unique Values in F2:F10: ", unique_values)
PYTHON

이를 달성하기 위해 집합 이해(comprehension)이 사용됩니다. Python의 집합은 중복 항목을 자동으로 제거하는 컬렉션이어서 고유 값을 찾기에 적합합니다. 이해(comprehension)는 각 셀의 텍스트 콘텐츠에 접근하여 F2:F10 범위 내의 각 셀을 반복합니다.

이 반복을 집합 내에 배치함으로써 고유 값만 유지되도록 합니다.

특정 값의 발생 횟수 세기

마지막으로, 이 스니펫은 주어진 범위 내에서 특정 값이 몇 번 발생하는지 계산합니다.

specific_value = '5'  # Adjust this as needed based on your data
occurrences = sum(cell.Text == specific_value for cell in worksheet["G2:G10"])
print(f"Occurrences of value '{specific_value}' in G2:G10: ", occurrences)
specific_value = '5'  # Adjust this as needed based on your data
occurrences = sum(cell.Text == specific_value for cell in worksheet["G2:G10"])
print(f"Occurrences of value '{specific_value}' in G2:G10: ", occurrences)
PYTHON

여기서 목표는 specific_value로 레이블된 특정 값의 발생을 정량화하는 것입니다. 코드는 강력한 표현식을 사용하여 G2:G10 범위 내의 각 셀을 반복하며, 셀의 텍스트 내용을 specific_value와 비교합니다.

표현식 cell.Text == specific_value는 목표 값을 포함한 각 셀에 대해 True로 평가하고, 그렇지 않은 경우 False로 평가됩니다. sum 함수는 이러한 논리 값들을 합산하며, True를 1로, False를 0으로 취급합니다. 이를 통해 특정 값이 발생한 횟수를 효과적으로 셉니다.

전체 코드 예제

코드의 이해를 돕기 위해 전체 코드는 다음과 같습니다:

from ironxl import *
import sys

# Setting Python installation path
sys.prefix = r'C:\Users\User Name\AppData\Local\Programs\Python\Python312'

# Setting the license key for IronXL
License.LicenseKey = "License-Key"

# Load the workbook
workbook = WorkBook.Load("data.xlsx")

# Select the worksheet at index 0
worksheet = workbook.WorkSheets[0]

# Display values in a specific range as an example
print("Sample data from A2:A5:")
for cell in worksheet["A2:A5"]:
    print("Cell {} has value '{}'".format(cell.AddressString, cell.Text))

# Calculate the sum of values in a different range
total_sum = worksheet["B2:B10"].Sum()
print("Total Sum of B2:B10: ", total_sum)

# Calculate the minimum value in another range
minimum_value = worksheet["C2:C10"].Min()
print("Minimum Value in C2:C10: ", minimum_value)

# Calculate the maximum value in a different range
maximum_value = worksheet["D2:D10"].Max()
print("Maximum Value in D2:D10: ", maximum_value)

# Find unique values in a specified range
unique_values = set(cell.Text for cell in worksheet["F2:F10"])
print("Unique Values in F2:F10: ", unique_values)

# Count occurrences of a specific value in a different range
specific_value = '5'  # Adjust this as needed based on your data
occurrences = sum(cell.Text == specific_value for cell in worksheet["G2:G10"])
print(f"Occurrences of value '{specific_value}' in G2:G10: ", occurrences)
from ironxl import *
import sys

# Setting Python installation path
sys.prefix = r'C:\Users\User Name\AppData\Local\Programs\Python\Python312'

# Setting the license key for IronXL
License.LicenseKey = "License-Key"

# Load the workbook
workbook = WorkBook.Load("data.xlsx")

# Select the worksheet at index 0
worksheet = workbook.WorkSheets[0]

# Display values in a specific range as an example
print("Sample data from A2:A5:")
for cell in worksheet["A2:A5"]:
    print("Cell {} has value '{}'".format(cell.AddressString, cell.Text))

# Calculate the sum of values in a different range
total_sum = worksheet["B2:B10"].Sum()
print("Total Sum of B2:B10: ", total_sum)

# Calculate the minimum value in another range
minimum_value = worksheet["C2:C10"].Min()
print("Minimum Value in C2:C10: ", minimum_value)

# Calculate the maximum value in a different range
maximum_value = worksheet["D2:D10"].Max()
print("Maximum Value in D2:D10: ", maximum_value)

# Find unique values in a specified range
unique_values = set(cell.Text for cell in worksheet["F2:F10"])
print("Unique Values in F2:F10: ", unique_values)

# Count occurrences of a specific value in a different range
specific_value = '5'  # Adjust this as needed based on your data
occurrences = sum(cell.Text == specific_value for cell in worksheet["G2:G10"])
print(f"Occurrences of value '{specific_value}' in G2:G10: ", occurrences)
PYTHON

산출

ReadExcel.py Python 파일을 실행하면, 스크립트가 Excel 데이터에 대해 수행한 작업의 결과를 반영하여 콘솔에 다음 출력을 볼 수 있습니다.

Python에서 Excel 파일 읽기: 그림 4

결론

이 튜토리얼에서는 IronXL을 사용하여 Excel 파일을 읽기 위해 Python 환경을 설정하는 방법을 탐색했습니다. 필요한 소프트웨어 설치, Excel 워크북 로드 스크립트 작성, 워크시트 선택, 데이터 읽기, 기본 데이터 분석 작업 수행 등을 다루었습니다.

IronXL은 Python에서 Excel 파일 작업을 위한 강력한 API를 제공하여 Microsoft Excel 필요 없이 데이터 분석, 데이터 정리 및 시각화 작업을 수행할 수 있습니다.

판매 데이터를 분석하거나 보고서에 데이터를 가져오거나, Excel 데이터에서 시각화를 생성하는 등, IronXL은 Python 응용 프로그램에서 Excel 파일을 관리하기 위한 강력한 솔루션을 제공합니다.

IronXL은 사용자들이 기능을 탐색할 수 있도록 무료 체험판을 제공하며, 기능을 완전히 통합할 준비가 된 사용자들을 위해 $799부터 라이센스가 시작됩니다.

자주 묻는 질문

Microsoft Excel 없이 Python에서 Excel 파일을 어떻게 읽을 수 있나요?

IronXL을 사용하면 Microsoft Excel이 시스템에 없더라도 Python에서 Excel 파일을 읽을 수 있습니다. WorkBook.Load("data.xlsx")를 사용하여 워크북을 로드하고 직접 워크시트와 셀 데이터를 접근할 수 있습니다.

Python에서 Excel 파일을 읽기 위해 IronXL을 사용하려면 어떤 설정이 필요한가요?

IronXL을 사용하려면 .NET 6.0 SDK, Python 3.0 이상, 그리고 pip이 설치되어 있는지 확인하세요. Visual Studio Code에서 코딩 환경을 설정하여 Excel 파일 작업을 시작하세요.

Python에서 IronXL을 어떻게 설치하나요?

터미널에서 pip install ironxl 명령을 실행하여 IronXL을 설치하세요. 이 라이브러리를 설치하면 Excel 파일을 읽고 조작할 수 있습니다.

IronXL을 사용하여 Excel 파일에서 데이터 분석 작업을 수행할 수 있나요?

네, IronXL은 Excel 시트 내의 합계 계산, 최소 및 최대 값 찾기, 고유 값 식별 등 다양한 데이터 분석 작업을 지원합니다.

IronXL을 사용하여 Excel 범위에서 고유 값을 찾을 수 있나요?

고유 값을 찾기 위해 셀 범위를 반복하고 고유한 텍스트 값을 추출하는 집합 컴프리헨션을 사용하세요. 이 방법은 효율적으로 모든 고유한 항목을 식별합니다.

IronXL을 사용하여 Excel에서 특정 값을 세는 것이 가능한가요?

네, 셀 텍스트가 목표 값과 일치하는 인스턴스를 합산하면서 생성자 표현식을 사용하여 셀 범위를 반복함으로써 특정 값의 발생 횟수를 셀 수 있습니다.

Python에서 Excel 조작을 위해 IronXL을 사용하는 이점은 무엇인가요?

IronXL은 Microsoft Excel이 필요하지 않은 강력한 Excel 파일 조작 API를 제공합니다. 데이터 분석, 정리, 시각화 같은 작업에 적합하며 Python 프로젝트의 생산성을 향상시킵니다.

IronXL을 사용하여 Excel 파일을 읽는 Python 스크립트를 어떻게 작성하나요?

ReadExcel.py라는 Python 스크립트를 작성하고, 필요한 라이브러리를 가져오고, Python 경로를 설정한 다음 IronXL의 메서드를 사용하여 Excel 워크북 및 데이터를 로드하고 상호 작용하세요.

IronXL을 사용하여 Excel 데이터에 어떤 작업을 수행할 수 있나요?

IronXL은 셀 값 읽기, 워크시트 선택, 합계 계산, 최소/최대 값 찾기, Excel 데이터 범위 내에서 특정 발생 횟수 세기 등의 다양한 작업을 허용합니다.

커티스 차우
기술 문서 작성자

커티스 차우는 칼턴 대학교에서 컴퓨터 과학 학사 학위를 취득했으며, Node.js, TypeScript, JavaScript, React를 전문으로 하는 프론트엔드 개발자입니다. 직관적이고 미적으로 뛰어난 사용자 인터페이스를 만드는 데 열정을 가진 그는 최신 프레임워크를 활용하고, 잘 구성되고 시각적으로 매력적인 매뉴얼을 제작하는 것을 즐깁니다.

커티스는 개발 분야 외에도 사물 인터넷(IoT)에 깊은 관심을 가지고 있으며, 하드웨어와 소프트웨어를 통합하는 혁신적인 방법을 연구합니다. 여가 시간에는 게임을 즐기거나 디스코드 봇을 만들면서 기술에 대한 애정과 창의성을 결합합니다.

Iron Support Team

We're online 24 hours, 5 days a week.
Chat
Email
Call Me