반응형
snowman95
코딩수련장
snowman95
전체 방문자
오늘
어제
  • 분류 전체보기 (229)
    • 앱테크 (3)
    • 옵시디언 (5)
    • 드라마, 영화 (1)
    • 개발자 이야기 (23)
    • 프로젝트 (10)
      • 프로젝트 방법론 (7)
      • 프로젝트 기록 (2)
      • Github (1)
    • 개발 지식 (0)
      • 디자인 패턴 (0)
    • 프론트엔드 개발 (5)
      • 테크트리 (2)
      • React.js (19)
      • ReactNative (2)
      • Next.js (6)
      • GraphQL (6)
      • 패키지 매니저 (2)
      • 라이브러리 (3)
      • 상태관리 라이브러리 (4)
      • Web 지식 (3)
      • HTML CSS (26)
      • Javascript (16)
      • 도구 (Tool) (3)
      • 성능 최적화 (1)
      • 디자인시스템 (0)
    • Python (53)
      • 모음집 (1)
      • 문법 (12)
      • 라이브러리 (15)
      • 알고리즘 (10)
      • 백준 문제풀이 (9)
      • 코딩테스트 (2)
      • 도구 (Tool) (3)
    • C++ (20)
      • 알고리즘 (6)
      • 삼성SW기출 (6)
      • 삼성 A형 (6)
    • 데이터사이언스 (1)
    • 인프라 (9)
      • 하드웨어 지식 (4)
      • Ansible (2)
      • Database (2)
      • 쉘스크립트 (1)
    • 주식 (0)
    • 취업 준비 (4)
      • 취업 이야기 (0)

블로그 메뉴

  • 홈
  • 태그

공지사항

인기 글

태그

  • GraphQL
  • 기계식키보드 #nuphy
  • nextjs
  • 나의 해방일지
  • A형
  • 백준
  • Next.js #graphql #tailwind.css
  • 전공 요약 #네트워크
  • 알고리즘
  • 오블완
  • 공간복잡도
  • 삼성SDS
  • 면접
  • C++
  • 전공 요약 #운영체제
  • 전공요약
  • 전공 요약 #데이터베이스
  • 삼성SW역량테스트
  • 티스토리챌린지
  • 언어

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
snowman95

코딩수련장

파이썬 (python) 라이브러리 - openpyxl, xlrd (excel 다루기)
Python/라이브러리

파이썬 (python) 라이브러리 - openpyxl, xlrd (excel 다루기)

2021. 3. 9. 23:12
728x90
반응형

openpyxl

- Document : openpyxl.readthedocs.io/en/stable/

 

pip install openpyxl


from openpyxl import Workbook

wb = Workbook(filename)	          새 excel 파일 생성 하여 ws 반환
wb = load_workbook(filename)      기존 excel 파일 로드
wb = load_workbook(filename, data_only=True) 수식이 아닌 값으로 받아온다.

ws = wb.active                    활성화된 시트 선택 (기본시트 선택됨)
ws = wb[sheet_title]              시트 이름으로 시트 선택
ws = wb.create_sheet(sheet_title) 시트 생성
ws.title = sheet_title            시트 이름 지정
wb.save("C:/파일위치.xlsx") excel  excel 파일 저장



ws.append([1,2,3])                행 단위로 입력
ws.cell(5, 5, '입력값')           셀 단위로 입력
ws['A1'] = '입력값'               특정 좌표에 입력

ws['B2'].value                    셀 주소로 값 가져오기
ws.cell(3, 2).value               셀 좌표로 값 가져오기 
ws['B3' : 'B6']                   연속된 셀 주소 선택

ws.rows	                          열 단위로 가져오기
ws.columns                        행 단위로 가져오기

for row in load_ws.rows:          모든 행 단위로 출력
     print(row)
     
for column in load_ws.columns:    모든 열 단위로 출력
     print(column)

for row in load_ws.rows:          열 단위로 반복하면서 셀 값 가져오기 
	for cell in row: 
        print(cell.value)
        
for column in load_ws.columns:    행 단위로 반복하면서 셀 값 가져오기 
	for cell in column: 
        print(cell.value)


all_values = []                   모든 행/열 리스트로 가져오기
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) 

pandas.DataFrame 과 같이 사용 가능

df 받아서 워크시트에 출력
def convert_df_to_ws(df, ws):
	for r in dataframe_to_rows(df, index=True, header=True):
    	ws.append(r)
    return ws


워크시트 받아서 df로 반환
def convert_ws_to_df(df, ws, include_index_or_columns):
	if include_index_or_columns:
		data = ws.values
		cols = next(data)[1:]
		data = list(data)
		idx = [r[0] for r in data]
		data = (islice(r, 1, None) for r in data)
		df = DataFrame(data, index=idx, columns=cols)
	else:
		df = DataFrame(ws.values)
	return df

 

 

 

xlrd 

import sys 
import subprocess
try: import re
except ImportError: subprocess.check_call([sys.executable, "-m", "pip", "install", 're'])
finally: import re
try: import xlrd
except ImportError: subprocess.check_call([sys.executable, "-m", "pip", "install", 'xlrd'])
finally: import xlrd

workbook = xlrd.open_workbook(r'액셀명.xlsx')
sheet = workbook.sheet_by_name("시트명")

sheet.cell_value(row_num, 4)

 

 

반응형
저작자표시 동일조건

'Python > 라이브러리' 카테고리의 다른 글

파이썬 (python) 라이브러리 - Pandas 판다스  (0) 2021.03.22
파이썬 (python) 라이브러리 - finpie  (1) 2021.03.19
파이썬 (python) 라이브러리 - yahoo_fin  (0) 2021.03.18
파이썬(python) 라이브러리 - numpy  (0) 2021.03.17
파이썬 (python) 라이브러리 - re (정규표현식)  (1) 2021.03.09
    'Python/라이브러리' 카테고리의 다른 글
    • 파이썬 (python) 라이브러리 - finpie
    • 파이썬 (python) 라이브러리 - yahoo_fin
    • 파이썬(python) 라이브러리 - numpy
    • 파이썬 (python) 라이브러리 - re (정규표현식)
    snowman95
    snowman95
    (17~19) Unity/Unreal Engine 게임 프로그래머 (20~21) System Administrator ___________ (22~) React 웹 프론트앤드 개발자 __________ 깃헙 : https://github.com/snowman95

    티스토리툴바