读者实际上只是一个解析器。当您要求它提供一行数据时,它将读取操作委托给基础file
对象,并将结果转换为一组字段。因此,无需关闭阅读器。这将是毫无意义的操作。
但是,您应该确保关闭基础file
对象。在Python 2.5+中,这是这样做的方法:
with open('/home/rv/ncbi-blast-2.2.23+/db/output.blast') as f:
z = csv.reader(f, delimiter='\t')
如果您不熟悉该with
语句,则基本上将其内容包含在一个try...finally
块中,该文件将关闭finally
零件中的文件。对于Python 2.5,您需要__future__
导入才能启用该with
语句。如果您需要保持与2.4之类的Python早期版本的兼容性,则应使用进行关闭try...finally
。
感谢Jared指出该with
声明的兼容性问题。