Comment importer un fichier en python, avec des espaces dans le nom?
Dois-Je tous les espaces dans le nom de fichier à importer, ou est-il une façon de dire import
qu'il y a des espaces?
3 réponses
vous devriez enlever les espaces du nom du fichier. Parce que le nom du fichier est utilisé comme identifiant pour les modules importés (i.e. foo.py
va être importés en tant que foo
) et les identificateurs Python ne peuvent pas avoir d'espaces, ce n'est pas supporté par le import
déclaration.
Si vous vraiment besoin de faire cela pour une raison quelconque, vous pouvez utiliser le __import__
fonction:
foo_bar = __import__("foo bar")
ceci importera foo bar.py
foo_bar
. Cela se comporte un peu différent de la import
déclaration et vous devriez éviter.
vous pouvez aussi utiliser importlib.import_module
fonction, qui est un wrapper autour de __import__
.
foo_bar_mod = importlib.import_module("foo bar")
ou
foo_bar_mod = importlib.import_module("path.to.foo bar")
Plus d'info: https://docs.python.org/2/library/importlib.html