ordered_list = [ "Mon","Tue","Wed","Thu","Fri","Sat","Sun"]
wb = Workbook('dem.xlsx')
ws = wb.add_worksheet("New Sheet")
first_row=0
for header in ordered_list:
col=ordered_list.index(header)
ws.write(first_row,col,header)
col=1
for j in po:
row=ordered_list.index(j[0])
ws.write(col,row,j[1])
col+=1
wb.close()
我有列表po = [('Mon',6421),('Tue',6412),('Wed',12416),('Thu',23483),('Fri',8978),( '星期六',7657),('太阳',6555)]。我必须在Excel表格中打印此列表,如
mon 6421
Tue 6412
wed 12416
'''
'''
Sun 6555
但我会这样。任何人都可以帮我解决这个问题。
Mon Tue Wed Thu Fri Sat Sun
6421
6412
12416
23483
8978
7657
6555
答案 0 :(得分:2)
在熊猫的帮助下,您可以轻松搞定。
import pandas as pd
po = [('Mon', 6421), ('Tue', 6412), ('Wed', 12416), ('Thu', 23483), ('Fri', 8978), ('Sat', 7657), ('Sun', 6555)]
# Generate dataframe from list and write to xlsx.
pd.DataFrame(po).to_excel('output.xlsx', header=False, index=False)
答案 1 :(得分:-1)
只需遍历po
列表即可。它已经有标题字段和数据字段。使用enumerate()
提供行号。
wb = Workbook('dem.xlsx')
ws = wb.add_worksheet("New Sheet")
po = [('Mon', 6421), ('Tue', 6412), ('Wed', 12416), ('Thu', 23483), ('Fri', 8978), ('Sat', 7657), ('Sun', 6555)]
for row, item in enumerate(po):
ws.write_row(row, 0, item)
wb.close()
我没有费心为日名添加交替大写 - 我不认为你真的想要那个。