我在python中尝试了一个程序,当我从Excel中检索数据时,它没有以正确的格式显示来读取excel中的数据。
以下是我的示例Excel数据:
这是我的代码
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('')
我想要这样的输出
ID Name age
1 Sam 12
2 Arun 12
但是我这样:
ID
Name
age
1
Sam
12
2
Arun
12
答案 0 :(得分:0)
问题在于第二个print('')
,它会在显示您的数据后导致不必要的换行符。
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
将在每次打印数据后执行,而不是每行。
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('')
只需将其缩回一个缩进级别,在每行后调用它