반응형
이 문제는 openpyxl이 xls 형식의 파일을 조작할 수 없기 때문에 openpyxl 패키지를 사용할 때 자주 발생하는 문제입니다.따라서 openpyxl의 사용은 항상 제한적이며 나중에 파이썬을 통해 xls를 xlsx 형식으로 변환할 수 있음을 발견했습니다.
1.설치팩:python-mpip install pypiwin32
2, 코드
import win32com.client as win32
import os
'''
xls와 xlsx 형식을 변환하는 데 사용됨
'''
def exchange(dir):
'''
:param dir: product_count, product_trend, product_before15 폴더
:return:
'''
path=os.path.abspath(__file__).split('src')[0]
path = os.path.join(path,'file','source_file',dir)
files = os.listdir(path)
for file_name in files:
if file_name.rsplit('.',1)[-1]=='xls':
fname = os.path.join(path,file_name)
excel = win32.gencache.EnsureDispatch('Excel.Application')
wb = excel.Workbooks.Open(fname)
#원래 위치에 생성: 원본 이름 +'.xlsx' 파일
wb.SaveAs(fname+"x", FileFormat = 51) #FileFormat = 51 is for .xlsx extension
wb.Close() #FileFormat = 56 is for .xls extension
excel.Application.Quit()
os.remove(fname)
exchange('product_sale')
// 작업할 xls 파일이 product_sale 폴더에 있다고 가정합니다
3.폴더에 있는 xls 형식 파일을 xlsx 형식으로 변환한 후 원래 xls 형식 파일을 삭제합니다.자신의 필요에 따라 조작을 삭제합니다
반응형
'개발 꿀팁 > PYTHON' 카테고리의 다른 글
파이썬 섭씨도와 화씨도의 변환 (0) | 2022.11.25 |
---|---|
pycharm 적용 팁8: 실행 프로그램의 일부 코드 (0) | 2022.11.25 |
ubuntu18.04 파이썬 환경 구축 (0) | 2022.11.25 |
파이썬 내장 함수 (0) | 2022.11.25 |
Python 클래스와 생성 방법 정의 (0) | 2022.11.25 |