Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/120.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
python使用循环和变量创建和附加txt文件_Python - Fatal编程技术网

python使用循环和变量创建和附加txt文件

python使用循环和变量创建和附加txt文件,python,Python,我已经创建了需要放入txt文件的变量。我没有任何成功。我的程序将创建头信息,但在此之后停止写入文件。顶部循环是我的“订单标题”,机器循环是我的“订单详细信息”。我试过调试,从各个角度看它。我不知道我做错了什么。该程序正在编写所有文本文件,并为XHORNO和XHCSNO添加附件。至于故障排除,我尝试了打印语句(print“header”print“detail”,和print“machine”)来验证代码是否按预期命中了每个循环。这一努力产生了正确的结果。但是,它不会将详细循环变量写入文件 for

我已经创建了需要放入txt文件的变量。我没有任何成功。我的程序将创建头信息,但在此之后停止写入文件。顶部循环是我的“订单标题”,机器循环是我的“订单详细信息”。我试过调试,从各个角度看它。我不知道我做错了什么。该程序正在编写所有文本文件,并为XHORNO和XHCSNO添加附件。至于故障排除,我尝试了打印语句(
print“header”
print“detail”
,和
print“machine”
)来验证代码是否按预期命中了每个循环。这一努力产生了正确的结果。但是,它不会将详细循环变量写入文件

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

根据给定的信息进行最佳猜测。。。每个循环都涉及到:

lines = lines + 1
然后抛出一个
名称错误
,因为
未定义(您以前称它为
)。由于您的
except
子句正在捕获所有异常,因此程序会悄悄地将该条目添加到
问题中
并继续

这是一个很好的例子,说明了为什么您应该尽可能具体地说明您在
子句中捕获了哪些错误,除了
子句


编辑:……但我想它当时应该已经将行写入文件了?所以可能还需要更多的信息。但是一定要缩小你的
范围,除了
,以便更容易地排除故障。

根据给定的信息进行最佳猜测。。。每个循环都涉及到:

lines = lines + 1
然后抛出一个
名称错误
,因为
未定义(您以前称它为
)。由于您的
except
子句正在捕获所有异常,因此程序会悄悄地将该条目添加到
问题中
并继续

这是一个很好的例子,说明了为什么您应该尽可能具体地说明您在
子句中捕获了哪些错误,除了
子句


编辑:……但我想它当时应该已经将行写入文件了?所以可能还需要更多的信息。但是一定要缩小
的范围,除了
,以便更容易进行故障排除。

实际上是在初始循环上方创建的变量。然而,我删除它只是为了验证它不是导致问题的原因,这并不能解决问题。不过,谢谢你对例外条款的建议!我会记住这一点,继续前进。@Alliedeacon从完全消除
之外的
块开始。如果您得到的错误是您需要捕获的错误,则使用该单一类型的错误将块添加回。如果您需要处理更多错误,请将它们逐个添加到子句中。最后,希望您能找到导致问题的实际错误。非常感谢!我学到了一些新东西!我不知道除了这样我还能用。我发现了错误,并改正了它。所有这些都正常工作。
行实际上是在初始循环上方创建的变量。然而,我删除它只是为了验证它不是导致问题的原因,这并不能解决问题。不过,谢谢你对例外条款的建议!我会记住这一点,继续前进。@Alliedeacon从完全消除
之外的
块开始。如果您得到的错误是您需要捕获的错误,则使用该单一类型的错误将块添加回。如果您需要处理更多错误,请将它们逐个添加到子句中。最后,希望您能找到导致问题的实际错误。非常感谢!我学到了一些新东西!我不知道除了这样我还能用。我发现了错误,并改正了它。一切都正常运转。