我尝试使用iglob而不是glob来获取say.txt文件的列表。如果不存在.txt文件,glob不会返回任何错误,但iglob会返回任何错误。在
代码:
def iGlobLatest():
dir_list = glob.iglob('*.txt')
print dir_list.next()
如果不存在.txt文件,我会得到:
回溯(最近一次呼叫):
文件“T:\prod\offlineValidation\scripts\古芬.py,第98行,在igloblast()中
文件“T:\prod\offlineValidation\scripts\古芬.py,第88行,在iglobaltest print dir中_列表。下一个()
停止迭代
如果我使用try/except,我可以避免错误,但这是唯一的方法吗?检查.txt文件是否存在的其他建议包括使用glob,但是由于我试图使用iglob而不是glob。。。。在
由于}。在
iglob()
是一个生成器,一旦所有匹配的文件都用完了,它就会引发StopIteration
。如果根本没有文件,它将在第一次调用next()
时引发{生成器用于迭代:
这样,
^{pr2}$StopIteration
异常将被隐式地捕捉到。我不知道你到底想做什么,但也许这就是你想要的:(Python 2.6或更高版本。)
相关问题 更多 >
编程相关推荐