Python에서 Excel 데이터를 처리할 때 특정 행과 열을 리스트 형식으로 추출하는 경우가 자주 발생합니다. Excel 범위를 Python 리스트로 변환하는 것은 다음과 같은 작업에 매우 유용합니다:

  • 파andas와 넘파이를 이용한 데이터 분석
  • 보고 및 ETL 프로세스의 자동화
  • 기계 학습 모델 또는 API와의 통합

이 기사에서는 정의된 Excel 범위를 Python에서 리스트로 변환하는 방법을 단계별로 배울 것입니다.

파이썬 엑셀 목록 변환기 라이브러리

수동으로 Excel 파일을 구문 분석하는 대신, 개발자들은 강력한 Excel to List 변환기 라이브러리인 .NET을 통한 Aspose.Cells for Python를 사용할 수 있습니다. 이 라이브러리는 범위, 행 및 열을 Python 리스트로 쉽게 추출할 수 있을 뿐만 아니라 수식, 형식 지정, 차트 및 피벗 테이블과 같은 고급 기능도 지원하여 복잡한 스프레드시트에서도 정확성을 보장합니다.

코딩을 시작하기 전에 설정이 준비되어 있는지 확인하세요:

  1. Python 3.7+을 설치하세요.
  2. Download Aspose.Cells from releases 또는 pip로 설치하십시오:
pip install aspose-cells-python
  1. 샘플 Excel 파일 (sampledata.xlsx)을 다음 내용으로 준비하십시오:
Excel을 Python에서 목록으로 변환하기: 샘플 데이터 파일

샘플 엑셀 데이터 파일.

Excel 범위를 Python 리스트로 변환하기: 단계별 가이드

Excel 데이터를 Aspose.Cells for Python을 사용하여 Python 리스트로 변환하는 과정을 살펴보겠습니다.

다음 단계를 따라 Excel 범위를 Python의 목록으로 변환합니다:

  1. 먼저, Workbook 클래스를 사용하여 기존 Excel 파일을 불러옵니다.
  2. 두 번째, 첫 번째 워크시트를 가져오세요.
  3. 다음으로 A1에서 C4까지의 범위를 만듭니다.
  4. 그 후, Range를 Python List로 변환합니다.
  5. 마지막으로, 목록을 인쇄하세요.

다음 Python 스크립트는 Excel 파일을 로드하고, 범위를 정의하며, 이를 Python 목록으로 변환합니다.

from aspose.cells import Workbook

# 단계 1: Excel 워크북 로드하기
book = cells.Workbook("sample_data.xlsx")

# 2단계: 첫 번째 워크시트에 액세스합니다.
sheet1 = book.worksheets.get(0)

# 3단계: 범위 정의 (이 예에서는 A1:C4)
sheet_cells = sheet1.cells
range_obj = sheet_cells.create_range("A1", "C4")

# Step 4: 범위를 중첩된 파이썬 리스트로 변환합니다.
range_list = []
for row_index in range(range_obj.first_row, range_obj.first_row + range_obj.row_count):
    row = []
   for column_index in range(range_obj.first_column, range_obj.first_column + range_obj.column_count):
        curr_cell = sheet_cells.check_cell(row_index, column_index)
        row.append(curr_cell.value if curr_cell else "")
    range_list.append(row)

# 5단계: 파이썬 리스트 출력하기
print("Python List Output:")
print(range_list)

Output

Python List Output:
[['City', 'Region', 'Store'], ['Chicago', 'Central', 3055], ['New York', 'East', 3036], ['Detroit', 'Central', 3074]]

이 전체 스크립트는 Excel에서 데이터를 추출하고 이를 Python 목록으로 변환하는 방법을 보여줍니다. 그 후에는 필요에 따라 쉽게 Pandas나 JSON으로 변환할 수 있습니다.

파이썬 리스트를 판다스 데이터프레임으로 변환하기

Pandas를 사용하면 리스트를 DataFrame으로 직접 변환할 수 있습니다:

import pandas as pd

# Convert to a Pandas DataFrame
df = pd.DataFrame(range_list[1:], columns=range_list[0])
print(df)

팬더스 데이터프레임 출력:

       City   Region  Store
0   Chicago  Central   3055
1  New York     East   3036
2   Detroit  Central   3074

Python 리스트를 JSON으로 저장하기

데이터를 JSON 형식으로 내보낼 수도 있습니다:

import json

# Convert to JSON
json_output = json.dumps(range_list)
print(json_output)

JSON Output:

[["City", "Region", "Store"], ["Chicago", "Central", 3055], ["New York", "East", 3036], ["Detroit", "Central", 3074]]

Excel 행을 Python에서 리스트로 변환하기

가끔 Excel에서 단일 행만 추출하여 목록으로 저장하고 싶을 수 있습니다. Aspose.Cells를 사용하여 이를 수행하는 방법은 다음과 같습니다:

  1. Excel 통합 문서를 로드하세요.
  2. 대상 워크시트에 접근하세요.
  3. 행을 인덱스로 선택하세요.
  4. 행 값을 Python 리스트에 수집하세요.
# Aspose.Cells 라이브러리 가져오기
from aspose.cells import Workbook

# 1단계: 파일에서 Excel 통합 문서 로드
book = Workbook("sample_data.xlsx")

# 2단계: 워크북에서 첫 번째 워크시트를 엽니다.
sheet = book.worksheets.get(0)

# 3단계: 행 인덱스 정의 (0 = 첫 번째 행, 헤더가 포함됨)
row_index = 0
cells = sheet.cells

# 선택한 행에 대한 범위 객체를 생성합니다.
row_range = cells.create_range(row_index, 0, 1, sheet.cells.max_column + 1)

# 단계 4: 행을 Python 리스트로 변환하십시오.
row_list = []
for column_index in range(row_range.first_column, row_range.first_column + row_range.column_count):
    curr_cell = cells.check_cell(row_index, column_index)  # Get each cell in the row
    row_list.append(curr_cell.value if curr_cell else "")  # Append value or empty string if cell is blank

# 추출된 행을 리스트로 인쇄하십시오.
print("Row to List:", row_list)

Output:

Row to List: ['City', 'Region', 'Store']

Excel 열을 Python의 리스트로 변환하기

단일 열을 목록으로 추출할 수도 있습니다. 예를 들어, Region 열을 목록으로 변환해 보겠습니다:

  1. 워크북과 워크시트를 불러옵니다.
  2. 색인으로 열을 선택하세요.
  3. 각 열의 각 행을 순회합니다.
  4. 열 값을 목록으로 수집하십시오.
# Aspose.Cells 라이브러리 가져오기
from aspose.cells import Workbook

# 1단계: 파일에서 Excel 통합 문서 로드
book = Workbook("sample_data.xlsx")

# 워크북에서 첫 번째 워크시트를 엽니다.
sheet = book.worksheets.get(0)

# 단계 2: 열 인덱스를 정의합니다 (0 = 첫 번째 열, 즉 열 A)
col_index = 0
cells = sheet.cells

# 선택된 열에 대한 범위 객체를 만듭니다.
# 매개변수: (시작행, 시작열, 총행, 총열)
# 여기, 행 0에서 시작하여 colindex를 선택하고, 모든 행을 포함하며, 너비 = 1 열
col_range = cells.create_range(0, col_index, sheet.cells.max_row + 1, 1)

# 단계 3 & 4: 열을 Python 리스트로 변환하십시오.
col_list = []
for row_index in range(col_range.first_row, col_range.first_row + col_range.row_count):
    curr_cell = cells.check_cell(row_index, col_index)  # Get each cell in the column
    if curr_cell:  # Only add if the cell exists (ignore empty rows)
        col_list.append(curr_cell.value)

# 추출된 열을 목록으로 출력하십시오.
print("Column to List:", col_list)

Output:

Column to List: ['City', 'Chicago', 'New York', 'Detroit']

무료 라이선스 받기

Aspose.Cells for Python via .NET을 제한 없이 평가하세요. 라이센스 페이지에서 무료 임시 라이센스를 요청하세요. 평가 제한을 제거하기 위해 코드에 적용하세요. DF에서 Excel, 차트, 수식 및 대용량 파일을 포함한 모든 기능을 테스트하세요.

엑셀에서 리스트로: 무료 리소스

다음 리소스를 활용하여 지식을 심화하고 이해를 강화하며 배운 내용을 보다 효과적으로 적용할 수 있는 실용적인 통찰력을 얻으세요.

결론

우리는 Aspose.Cells for Python via .NET을 사용하여 Excel 데이터를 범위, 행 및 열을 추출하여 Python 리스트로 변환하는 방법을 보여주었습니다. 리스트 형식으로 변환된 데이터는 Pandas, JSON 또는 기타 처리 작업에 사용할 수 있습니다. openpyxl 또는 pandas.readexcel과 같은 라이브러리가 범위를 추출할 수 있지만, Aspose.Cells는 수식, 서식, 차트 및 병합된 셀에 대한 더 많은 제어를 제공하므로 복잡한 Excel 작업에 더 나은 선택이 됩니다.

도움이 필요하시거나 질문이 있으시면, 언제든지 저희 Aspose.Cells Free Support Forum에서 문의해 주십시오. 저희 팀이 기꺼이 도와드릴 것입니다.

See Also