Fichier ouvrir et fermer en python

J'ai lu que lorsque le fichier est ouvert en utilisant le format ci-dessous

with open(filename) as f:
       #My Code
f.close()

explicite de clôture de fichier n'est pas nécessaire . Quelqu'un peut m'expliquer pourquoi est-il si ? Aussi, si quelqu'un fait explicitement fermez le fichier quelconque effet indésirable ?

effbot.org/zone/python-with-statement.htm
J'ai supprimé la balise python-2.7 parce que l'instruction n'est pas spécifique à cette version de Python. L'instruction a été introduit dans Python 2.5 et est depuis lors une caractéristique fondamentale de Python. Un blog interessant sur ce sujet est ici: preshing.com/20110920/the-python-with-statement-by-example)

OriginalL'auteur misguided | 2013-07-03