반응형
pip install openpyxl
디렉토리 내의 엑셀 파일 목록 전체를 읽어서 분석하기 코드 일부
import openpyxl
import os
dirList = [
'D:\\admin',
'D:\\front'
]
currentNo = 0
def analsysEcxcel(filename, currentNo):
# 엑셀파일 열기
wb = openpyxl.load_workbook(filename)
# 현재 Active Sheet 얻기
ws = wb.active
# Active Sheet 지정하기
# ws = wb.get_sheet_by_name("Sheet1")
# 국영수 점수를 읽기
for r in ws.rows:
row_index = r[0].row # 행 인덱스
if row_index < 2: # 첫번째 행은 칼럼 정보가 있으니 그대로 패쓰
continue
kor_score = r[7].value
eng_score = r[8].value
math_score = r[9].value
if int(kor_score) > 50: # 국어 점수가 50점 초과 인원만 확인
currentNo += 1
print("%d > %d: %s %s %s" % (currentNo, row_index, kor_score, eng_score, math_score))
# 엑셀 파일 종료
wb.close()
return currentNo
currentFileNo = 0
for dir in dirList:
currentDir = dir
# 현재 디렉토리 위치가 존재하는 지 확인
if os.path.exists(currentDir) == False:
print('no directory: %s' % currentDir)
else:
# 현재 디렉토리 출력
print(currentDir + ' >>>>>>')
fileList = os.listdir(currentDir)
for filename in fileList:
if filename[:1] == '~': # ~로 시작되는 임시 파일이 존재하면 패쓰
print('except file .... <<<<<<< %s' % filename)
continue
currentFileNo += 1
# 현재 파일 디렉토리 + 파일명 정리
currentFile = '%s\\%s' % (currentDir, filename)
currentNo = analsysEcxcel(currentFile, currentNo)
# 현재 파일 갯수를 출력. 심심하니깐.
print('File Count : %d' % currentFileNo)
반응형