内循环只执行一次

时间:2013-09-23 07:28:57

标签: python for-loop

我有以下代码:

heList = open(self.IAM_he_List, 'r')
appsList = open(self.IAM_appsList, 'r')
resultsFile = open(self.IAM_Tests_Results, 'w')

for line in heList:
    __splitLine = line.split(',')
    heNum = __splitLine[0]
    roleName = __splitLine[1].rstrip()
    for app in appsList:
            resultsFile.writelines(heNum +  "," + roleName + "," + app.rstrip() + "," + "," + "," + "\n")

我希望它为每个外部循环迭代一个内部循环,但似乎内部循环只执行一次。我想我错过了一些基本的东西。有任何想法吗?

1 个答案:

答案 0 :(得分:1)

appslist是一个文件迭代器。在第一个循环之后,迭代器耗尽(因为已到达文件的末尾)。因此,将跳过后续的for循环。

您可以(假设您确实需要重复执行此操作)使用appslist.seek(0)重置文件迭代器,或者将文件读入列表一次并重复遍历列表。