Exécution de notebooks avec des paramètres¶
Actuellement, les paramètres transmis dans la chaîne ARGUMENTS sont analysés dans la liste sys.argv qui utilise l’espace comme délimiteur.
Exemple : Exécuter un projet de notebook avec des paramètres¶
L’exemple suivant transmet deux arguments (env et prod) en utilisant ARGUMENTS = “prod env”.
Le premier élément (sys.argv[0]) est le nom du fichier du notebook, suivi des arguments séparés par des espaces.
EXECUTE NOTEBOOK PROJECT "<database_name>"."<schema_name>"."<project_name>"
MAIN_FILE = 'snow://workspace/<workspace_hash>/path/to/notebook.ipynb' -- Notebook name with full file path
COMPUTE_POOL = '<compute_pool_name>'
RUNTIME = '<runtime_version>' -- For example, V2.2-CPU-PY3.11
QUERY_WAREHOUSE = '<warehouse_name>'
ARGUMENTS = 'env prod' -- Can pass in a single string, which can be parsed in the notebook code. Point to the environment configuration.
REQUIREMENTS_FILE = 'path/to/requirements.txt';
Afficher tous les arguments¶
Pour inspecter la liste complète des paramètres transmis à la session, utilisez le module sys.
import sys
print(sys.argv)
Exemple de sortie :
['exampletestSCOS.ipynb', 'env', 'prod']
Imprimer chaque argument¶
Pour traiter ou enregistrer chaque paramètre individuellement, parcourez la liste sys.argv.
import sys
for arg in sys.argv:
print(arg)
Exemple de sortie :
exampletestSCOS.ipynb
env
prod
Accéder à un argument spécifique¶
Les paramètres sont accessibles par leur index dans la liste. Comme sys.argv[0] est le nom du notebook, le premier paramètre utilisateur commence à index[1].
import sys
# Access the first user parameter
first_param = sys.argv[1]
print(first_param)
Exemple de sortie :
env
Pour obtenir la syntaxe complète et plus de détails sur les paramètres, consultez EXECUTE NOTEBOOK PROJECT.