【发布时间】:2018-01-10 19:32:38
【问题描述】:
我有一个下面给出的代码,我想用它来创建一个 excel 文件。代码是:
#!/usr/bin/python
import xlwt
wb = xlwt.Workbook()
ws = wb.add_sheet('A Test Sheet')
orf = {1: ('793', 804, 12, 0), 2: ('952', 1020, 69, 0), 3: ('1222', 1227, 6, 0), 4: ('1309', 1338, 30, 0), 5: ('1921', 1977, 57, 0), 6: ('2164', 2253, 90, 0), 7: ('2305', 2337, 33, 0)}
ws.write(0, 0, "NO.")
ws.write(0, 1, "Direction")
ws.write(0, 2, "Frame")
ws.write(0, 3, "Start")
ws.write(0, 4, "End")
ws.write(0, 5, "Codon numbers")
ws.write(0, 6, "ORF Sequence")
j = 1
k = 2
for i in orf.items():
numorf=i[0]
startorf=orf[numorf][0]
stoporf=orf[numorf][1]
lengthorf=orf[numorf][2]
frameorf=orf[numorf][3]
ws.write(j, k, numorf)
ws.write(j, k, "5 to 3")
ws.write(j, k, frameorf)
ws.write(j, k, startorf)
ws.write(j, k, stoporf)
ws.write(j, k, lengthorf)
ws.write(j, k, "ATGACA...ATGCGA")
j = j+1
k = k+1
wb.save('example.xls')
代码的所有部分工作正常,但循环中写入字典值的部分不正确并出现以下错误,
for i,j,k in orf.items():
ValueError: need more than 2 values to unpack
我试图解决它,但没有成功。
如何在循环中正确管理列号和行号,以便可以使用 dict 中的值创建文件?
为了清楚起见,我想把 numorf 的值放在“NO”下面,“5 到 3”下面的方向,frameorf 下面“Frame”,startorf 下面“Start”,stoporf 下面“End”,lenghtorf 下面“ “ORF 序列”下方的“密码子编号”和“ATGACA...ATGCGA”。
【问题讨论】:
标签: python dictionary xlwt