Python pandas - Ne read_csv conserver le fichier ouvert?
Lors de l'utilisation de pandas read_csv()
méthode, il conserve le fichier ouvert ou ferme (jeter le descripteur de fichier)?
Si elle le garde, comment puis-je fermer après que j'ai fini d'utiliser le dataframe?
Vous pouvez vous attendre que tout est correctement conçu méthode de lecture qui ouvre un descripteur de fichier se ferme aussi avant de retourner.
Que ce que j'attendais, je voulais juste être sûr..
J'attend aussi à ce que, mais j'ai eu des surprises. Je ne peux pas expliquer pourquoi Windows me dit que je ne peux pas déplacer le fichier parce que python est le tenant... ( mais c'est peut-être spyder, à python Ide...)
Je suis curieux de savoir si cela est garanti (fermeture du descripteur de fichier) si une exception est levée pendant que le fichier est analysé et le panda est en cours de construction.
Que ce que j'attendais, je voulais juste être sûr..
J'attend aussi à ce que, mais j'ai eu des surprises. Je ne peux pas expliquer pourquoi Windows me dit que je ne peux pas déplacer le fichier parce que python est le tenant... ( mais c'est peut-être spyder, à python Ide...)
Je suis curieux de savoir si cela est garanti (fermeture du descripteur de fichier) si une exception est levée pendant que le fichier est analysé et le panda est en cours de construction.
OriginalL'auteur nivniv | 2015-04-02
Vous devez vous connecter pour publier un commentaire.
Si vous passer un fichier ouvert, il va le garder ouvert (la lecture à partir de la position actuelle), si vous passez une chaîne de caractères puis
read_csv
va ouvrir et fermer le fichier.En python si vous ouvrez un fichier, mais oublie de la fermer, python sera pour vous à la fin du bloc de fonction (lors de la collecte des ordures).
c'est à dire si vous appelez une fonction python qui ouvre un fichier, à moins que le fichier objet est retourné, le fichier est auto
magieautomatiquement fermé.Remarque: La syntaxe préférée est la
with
bloc (qui, ainsi que la fermeturef
à la fin de lawith
bloc, définit laf
variable uniquement à l'intérieur de lawith
bloc):OriginalL'auteur Andy Hayden