我已经创建了需要放入txt文件的变量。我没有成功。我的程序将创建头信息,但在此之后停止写入文件。最上面的循环是我的“订单头”,machines循环是我的“Order Detail”。我试过调试,从各个角度看。我不知道我做错了什么。所有的文件都是用csxho编写的。至于故障排除,我尝试了print语句(print "header"
print "detail"
,和print "machine"
)来验证代码是否按预期命中每个循环。这种努力导致了正确的输出。但是它不会将detail循环变量写入文件。在
for k, v in atlantic_billing.iteritems():
# print "header"
#CREATE XHORNO
XHORNO = str(digits + counter)
print XHORNO
with open(XHORNO + ".txt", 'w') as order:
XHCSNO = k
machines = v
#create order header information
order.write(XHORNO+"\n")
order.write(XHCSNO+"\n")
line = 1
counter = counter + 1
for machine in machines :
try:
XDORNO = XHORNO
XDORSQ = line
line = line + 1
XDITD1 = ranpak_dict[machine]['MODEL']
XDITD2 = ranpak_dict[machine]['SN']
XDCAVC = ranpak_dict[machine]['TOTAL']
order.write(XDORDQ + "\n")
order.write(XDITD1 + "\n")
success.append(machine)
lines = lines + 1
except :
issues.append(machine)
problems = problems + 1
根据给定的信息进行最佳猜测。。。每一个循环都会深入到:
然后抛出一个
NameError
,因为lines
是未定义的(您之前称它为line
)。由于您的except
子句正在捕获所有异常,程序会悄悄地将该条目添加到problems
并继续。在这是一个很好的例子,说明为什么您应该尽可能具体地说明您在
except
子句中发现了哪些错误。在编辑:…但我想它应该在那时将行写入文件?所以。。。可能还需要更多的信息。但一定要缩小你的
except
范围,使其更容易排除故障。相关问题 更多 >
编程相关推荐