2017-10-13 2 views
-1

Ich habe versucht, ein Programm in Python Daten von Excel zu lesen, wenn ich Daten aus Excel abrufen, die nicht im richtigen Format angezeigt wird.Align ist nicht im richtigen Format in Python openpyxl

Hier ist mein Beispieldaten übertreffen:

enter image description here

Hier ist mein Code

import os 
os.getcwd() 
import openpyxl 
wb=openpyxl.load_workbook('sample.xlsx') 
type(wb) 
wb.get_sheet_names() 
sheet=wb.get_sheet_by_name('Sheet1') 
sheet.title 
columns=3 
rows=3 
for r in range(1,rows+1): 
    for c in range(1,columns+1): 
      d=sheet.cell(row=r,column=c) 
      print('%-8s'%d.value , end='') 
      print('') 

ich ausgeben wollen wie dieses

ID  Name age  
1  Sam  12  
2  Arun 12 

aber ich wie diese:

ID  
Name  
age  
1  
Sam  
12  
2  
Arun  
12 

Antwort

0

Das Problem ist mit der zweiten print(''), die nach dem Anzeigen Ihrer Daten einen unnötigen Zeilenumbruch verursacht.

for r in range(1,rows+1): 
    for c in range(1,columns+1): 
     d=sheet.cell(row=r,column=c) 
     print('%-8s'%d.value , end='') 
     print('')       <------There's the error 

Es wird nach jedem Datendruck statt jeder Zeile ausgeführt.

for r in range(1,rows+1): 
    for c in range(1,columns+1): 
     d=sheet.cell(row=r,column=c) 
     print('%-8s'%d.value , end='') 
    print('') 

ziehen Sie es einfach wieder ein Einrückungstiefe es nach jeder Zeile für die Lösung meines Problems

+0

Dank Adalcar zu nennen. – sam

Verwandte Themen