-
问题描述
今天用Python写程序的时候,写了两个for循环,结果发现循环次数没有达到预期(也就是两个循环的次数相乘的循环次数)
-
解决方法
通过调试发现,当外循环进行第一次的时候,内循环正常工作,可是,当外循环进行第二次以后,内循环无法正常工作,根本跳不到内循环里面去,经过一番调试,终于有了发现,究其原因还是循环对象出了问题,因为我的第二个循环对象是生成器,我在使用生成器的初衷是让为了节约空间,可是,忽略了生成器的一个特性,那就是生成器只能运行一次,完整的运行一次以后,生成器就完成了它光荣的使命,不再起作用了,这也就导致了我们的双重循环程序出现了循环次数的 ‘异常’,解决方法也简单,用list()将生成器变成列表就行了。