본문 바로가기
IT/Python

[Python] openpyxl 을 사용하여 xlsx 파일 읽어 List 변환

by 초록술 2023. 1. 12.
반응형

xlsx 파일을 list로 변환 - python

Python의 openpyxl의 load_workbook을 이용하여 엑셀 파일을 읽어 List로 변환하는 샘플입니다.


pip 를 이용하여 openpyxl package를 설치 바랍니다.

pip install openpyxl

 

아래 python 샘플 소스는 openpyxl 을 사용하여 엑셀 파일을 읽어 list 로 변화하는 예제입니다.

from openpyxl import load_workbook

def xlsx_read(filename):

    load_wb = load_workbook(filename, data_only=True)
    #print(load_wb.actvie)
    #load_ws = load_wb[load_wb.get_sheet_names(0)]
    
    #열려있는 시트
    load_ws = load_wb.active

    for row in load_ws.rows:
        row_value = []
        for cell in row:
            row_value.append(cell.value)
        all_values.append(row_value)
    # print(all_values)

    # Columm_name
    header = all_values.pop(0)

    load_wb.close()
    return header, all_values


if __name__ == '__main__':
    print("Start")
    filename = input("excel 파일명을 입력하세요 (ex: test.xlsx) ]")
    #filename = 'export_230111.xlsx'
    # Excel 을 리스트로 변환 : columm Name 과 data 로 분기
    columm, row_data= xlsx_read(filename)


(동일한 경로의)엑셀 파일명을 입력받아 해당 파일의 활성화된 Sheet(load_wb.active)의 데이터를 읽습니다.
첫 번째 행을 header로 인식하고 그다음부터는 data로 인식합니다.
xlsx_read 함수를 호출하면 두 개의 리스트가 return 됩니다.

columm, row_data= xlsx_read(filename)

 

많은 도움이 되었으면 좋겠습니다.

반응형

댓글