next()什么时候在我的python类中被调用?

时间:2015-10-09 03:19:47

标签: python class next

class corpus_reader:
  def __init__(self, corpus_file_path):
      self.corpus_file_path = corpus_file_path
      import os
      walker = os.walk(self.corpus_file_path)
      print(self.corpus_file_path)
      directory_list = list(next(walker))
      directory_list = directory_list[2]
      corpus_as_list = directory_list
      self.corpus_as_list = corpus_as_list
  def get_corpus_as_list(self):
     return self.corpus_as_list

path = input("Please enter the file path" )
myCR = corpus_reader(path) 
print(myCR.get_corpus_as_list())

当我运行此代码时,IDLE给出了StopIteration错误。我知道当next()被调用太多次时会发生这种情况,但是我无法看到它被多次调用。这是怎么回事?

1 个答案:

答案 0 :(得分:1)

首次拨打

,您将获得StopIteration
next(os.walk(some_dir)) 

如果some_dir不存在,或者不是目录