Ausführen von Notebooks mit Parametern¶
Derzeit werden in der ARGUMENTS-Zeichenfolge übergebene Parameter in die sys.argv-Liste analysiert, mit Leerzeichen als Trennzeichen.
Beispiel: Ausführen eines Notebook-Projekts mit Parametern¶
Im folgenden Beispiel werden zwei Argumente (env und prod) mit ARGUMENTS = ‚env prod‘ übergeben.
Das erste Element (sys.argv[0]) ist der Notebook-Dateiname, gefolgt von den durch Leerzeichen getrennten Argumenten.
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';
Alle Argumente anzeigen¶
Um die vollständige Liste der an die Sitzung übergebenen Parameter zu prüfen, verwenden Sie das Modul sys.
import sys
print(sys.argv)
Ausgabebeispiel:
['exampletestSCOS.ipynb', 'env', 'prod']
Jedes Argument wird ausgegeben¶
Um jeden Parameter einzeln zu verarbeiten oder zu protokollieren, durchlaufen Sie die die Liste sys.argv in einer Schleife.
import sys
for arg in sys.argv:
print(arg)
Ausgabebeispiel:
exampletestSCOS.ipynb
env
prod
Zugriff auf ein bestimmtes Argument¶
Der Zugriff auf Parameter erfolgt über ihren Index in der Liste. Weil sys.argv[0] der Name des Notebooks ist, beginnt der erste Benutzerparameter bei index[1].
import sys
# Access the first user parameter
first_param = sys.argv[1]
print(first_param)
Ausgabebeispiel:
env
Die vollständige Syntax und die Parameterdetails finden Sie unter EXECUTE NOTEBOOK PROJECT.