算法实习生

python细节

2019-05-02  本文已影响0人  STACK_ZHAO

在读取文件的时候,特别是在循环嵌套的时候

for open(“1.txt”) as f1:

for  line in f1:

    list1=[ ]

    for open(‘2.txt’) as f2:

    for line2 in f2:

    do something

嵌套循环的话,这样是对的,意思为打开f1,然后针对f1中的每一行读入的变量进行在f2读入的变量里面循环,这样,每次循环都是重新打开文件,这个时候指针每次都是从第一行开始,所以说这样是对的。

如果是这样

for open('1.txt’) as f1,open(‘2.txt’) as f2:

   for lin1 in f1:

    for line2 in f2:

    Do something

那么这个就只是在f2中遍历f1中第一个变量,因为是同时打开的,所以说在f1的第一个变量遍历结束之后,指针已经到了f2中的最后一行,所以再循环的时候,是从最后一行开始,所以第f1中的第二个开始就不在进行遍历。导致始终得不出结果!!!!!!

上一篇 下一篇

猜你喜欢

热点阅读