반응형

Python 28

[openpyxl] 각 엑셀 행과 열에 새로운 값을 입력할 경우

아주 단순한 작업으로, 1부터 100까지의 숫자를 각 행과 열 순서대로 한다고 하면 다음과 같이 하면 됩니다. 우선 새로운 엑셀 파일을 만들고 여기에 ws.iter_rows를 통해 순차적으로 wb=openpyxl.Workbook() ws=wb["Sheet"] counter = 1 for row in ws.iter_rows(min_row=1, max_col=10, max_row=10): for cell in row: cell.value = counter counter += 1 그러면 아래와 같이 나옵니다. 칼럼 순서대로 하려고 하면 ws.iter_rows를 대신 쓰면 되겠지요. 여기서는 새로운 sheet(ws2)를 만들어서 더해봅니다. ws2=wb.create_sheet("New") counter = 1 ..

[openpyxl] 자신이 가진 엑셀 파일의 실질적인 행, 열 수를 알고 싶다면?

일단 load_workbook()으로 파일을 연 다음에, ws.max_row, ws.max_column 갖고 해주면 됩니다. wb=openpyxl.load_workbook("1서울/개표상황(투표구별)_강남구갑.xlsx") ws=wb.worksheets[0] print(f"max_row is in row {ws.max_row} and max_column is in column {ws.max_column}") max_row is in row 68 and max_column is in column 57 최대 행은 68, 최대 열은 57이라고 나오네요.

[openpyxl] loop 만들기

엑셀 각 셀 별로 loop를 만들어보도록 하겠습니다. 우선 각 셀의 coordinate를 한 번 만들어볼까요? 가장 기본적인 루프 형식은 숫자를 직접 지정해주는 겁니다. wb=Workbook() ws=wb["Sheet"] for row in range (1, 4): for col in range (1, 4): cell=ws.cell(row=row, column=col) print(cell.coordinate, end="!") print() 이렇게 하면 아래와 같이 각 셀의 좌표들이 나오게 됩니다. A1!B1!C1! A2!B2!C2! A3!B3!C3! 여기서 매우 중요한 것은 마지막은 range에 포함되지 않는다는 것. 다시 말해 4열과 4행은 들어가지 않습니다! 만약에 행열을 바꿔주면 다음과 같이 나오겠..

[openpyxl] 한 셀 기준으로 다른 셀을 정의할 때: offset 기능

엑셀에서 한 셀을 정해놓고 그 셀 기준으로 칼럼을 하나 옮겨라, 열을 세 줄 옮겨라 등등을 요구할 때 offset 기능을 씁니다. 예를 들어 A1에는 Train이라는 문자를 놓고 그걸 기준으로 칼럼 하나 옮겨서 Train Set이라는 문자를 넣어라고 하면, wb=Workbook() ws=worksheets[0] ws["A1"].value="Train" ws.cell(1,1).offset(0,1).value="Train Set"

[openpyxl] 파이썬으로 엑셀 셀에 있는 내용 입력 및 파악

파이썬과 엑셀을 연결해주는 강력한 라이브러리 openpyxl에 대해 알아보고자 합니다. 오늘은 기본부터 시작해봅니다. 우선 해당 워킹 폴더를 바꿔주고, 여기서 기존 엑셀 파일이 있으면 읽어줍니다. 여기서는 21대 총선 자료를 한 번 보도록 할까요? (강남구갑) import openpyxl import os 이후에 폴더 변경하고 os.getcwd() os.chdir("/Users/xxx/Downloads/제21대 국회의원선거(재보궐 포함) 투표구별 개표결과/지역구") 그 다음에 load_workbook를 써야 합니다. wb=openpyxl.load_workbook("1서울/개표상황(투표구별)_강남구갑.xlsx") sheet이 하나밖에 없는데, 맨 처음 sheet의 제목을 알아봅니다. ws=wb.worksh..

[function연습] 두 단어의 앞글자가 같으면 true, 아니면 false

.split 함수를 써서 쪼개고 (여기서는 두 단어만 있다고 가정 예를 들어 fat cat같은) 그 다음에는 리스트 개념. 쪼갠 다음 첫번째 단어랑 (wordlist[0], fat), 두번째 단어를 정하고 (wordlist[1], cat), 그 다음에 첫번째 스펠링, 두번째 스펠링 비교. def same_letter(text): wordlist=text.split() print(wordlist) first=wordlist[0] second=wordlist[1] return first[0]==second[0] 더 간단하게는 아예 첫번째 단어, 첫번째 스펠 한 번에 쭉 적음 wordlist[0][0] def same_letter(text): wordlist=text.split() print(wordlist)..

Python numpy/pandas library 들어가기에 앞서

저도 이제 막 파이썬에 입문한 사람으로 파이선에서 가장 많이 사용되는 library 둘, numpy와 pandas library에 관한 중요 내용들을 요약하려 합니다. 아래 링크를 보시면 아시겠지만 파이썬에서 가장 많이 사용되는 top 10 라이브러리에 이 둘이 들어가 있고, 아마 데이타 사이언스 하는 분들이라면 거의 기본적으로 이용하는 라이브러리라고 봐도 무방할 듯 합니다. https://towardsdatascience.com/top-10-python-libraries-for-data-science-cd82294ec266 Top 10 Python Libraries for Data Science Some cool help for your Data Science explorations! towardsda..

반응형