2017-10-24 8 views
0

저는 openpyxl을 사용하여 파이썬에서 2 차원 목록을 작성하는 방법을 생각해 냈습니다. 다른 값으로 구분 된 각각의 폴더에 pdfs 목록이 있습니다. 파일 이름의 밑줄 ("year_day_month_name.pdf")은 지금까지 값을 추출하여 목록에 넣고 Excel의 각 열에 제목을 쓸 수 있었지만 추출 할 수는 없습니다. 값을 반복하고 열과 행을 반복하여 Excel 파일에 쓰십시오.openpyxl을 사용하여 Excel에서 두 차원 목록 작성

코드의 마지막 부분에 목록의 첫 번째 값만 쓸 수 있었지만 그 방법이라고 생각하지 않습니다. 감사합니다.

from os import listdir 
from openpyxl import Workbook 

root = "C:\z_PruebPy" 

multilist = [] 


for files in listdir(root): 
    multilist.append(str(files).strip(".pdf")) 

ldel = [] 

for i in multilist: 
    ldel.append(i.split("_")) 

print(ldel) 

for pp in ldel: 
    print(pp) 

book = Workbook() 
sheet = book.active 

columns = ["YEAR", "MONTH", "DAY", "NUMBER", "TIPEB", "ROL", "ST", "NUM", 
     "USE", "PROP"] 

row = 1 
for i, value in enumerate(columns): 
    sheet.cell(column=i+1, row=row, value=value) 

for pe in ldel: 
    sheet.cell(column=1, row=row+1, value=pe[0]) 
    sheet.cell(column=2, row=row + 1, value=pe[1]) 
    sheet.cell(column=3, row=row + 1, value=pe[2]) 


book.save("C:/z_PruebPy/output.xlsx") 

답변

0

나는 당신이하고자하는 일을 정말로 이해하지 못하고 있지만 코드가 불필요하게 복잡합니다.

ws.append(columns) 
for pe in ldel: 
    ws.append(pe) 

해야합니다.

+0

와우, 나는 너무 복잡해, 각 셀에 쓰기 위해 구성해야했던 다른 셀로 작업하는 것이 좋다고 생각했습니다. – fcr