2
votes

Comment importer un fichier Python .py dans Jupyter Notebook

J'ai un bloc-notes Jupyter et j'aimerais utiliser certaines informations d'identification que j'ai placées dans un fichier config.py. Ce fichier se trouve dans le même dossier que le bloc-notes Jupyter.

J'utilise la ligne

ModuleNotFoundError: No module named 'config.py'; 'config' is not a package

Le problème est que Jupyter répond avec ce message:

import config

Merci de votre aide


1 commentaires

Merci à tous pour leurs réponses. J'ai trouvé un moyen de résoudre mon besoin en utilisant le package Dotenv Python: pypi.org/project/python-dotenv


3 Réponses :


0
votes

L'instruction import est utilisée pour importer des bibliothèques externes à utiliser dans votre programme. Je pense que vous cherchez peut-être à lire le fichier, donc à condition qu'il soit dans le même chemin de dossier que votre ordinateur portable, vous pouvez utiliser ceci:

fileContents = file.read()
print(fileContents)

Vous pouvez ensuite définir le contenu du fichier sur une variable et l'imprimer par exemple en utilisant:

file = open("config.py", "r")

Vous voudrez peut-être utiliser un format csv et ajouter une sorte de cryptage s'il s'agit d'un mot de passe stocké par exemple.


1 commentaires

Ce n'est pas nécessairement vrai. import est tout aussi souvent utilisé pour importer des modules personnalisés et pas seulement des bibliothèques externes.



0
votes

Vous devrez peut-être essayer

__init__.py

Cela devrait également fonctionner avec les variables globales en fonction de la façon dont vous avez stocké vos informations d'identification dans config. Si vous importez le module à partir d'un dossier différent, vous pouvez transformer le dossier en un package en créant un fichier .py vide dans le dossier appelé:

from config import <the_function_you_want_to_use>

Ensuite, stockez une copie du fichier .py que vous souhaitez utiliser comme module et appelez-le. Je suis nouveau dans ce domaine donc j'espère que cela vous aidera.


2 commentaires

Pourquoi l' from config import fonctionnerait-elle si l' import normale ne fonctionne pas?


Ce que j'ai compris de votre explication, c'est que votre projet rencontrait un problème lors de l'importation de ce que vous vouliez, donc l'utilisation de l'appel explicite pourrait aider. Qu'essayez-vous d'importer exactement?



0
votes

Après quelques recherches, j'ai trouvé un moyen de résoudre mon besoin en utilisant le package Dotenv Python: pypi.org/project/python-dotenv

Ce qui doit être fait? Insérez les lignes suivantes:

CLIENT_ID = os.getenv("CLIENT_ID")
CLIENT_SECRET = os.getenv("CLIENT_SECRET")

Placez ensuite un fichier caché nommé .envse trouvent les informations d'identification. Dans mon cas, cela ressemble à ceci:

CLIENT_ID = "XXXX"
CLIENT_SECRET = "YYYY"

Ensuite, dans votre fichier notebook, chaque fois que vous devez charger les informations d'identification, utilisez:

!pip install python-dotenv

# Credentials file
%load_ext dotenv
%dotenv
import os

Et vous êtes prêt à partir!

Crédit à http://veekaybee.github.io/2020/02/25/secrets/ pour la solution


0 commentaires