Execução de notebooks com parâmetros¶
Atualmente, os parâmetros passados na cadeia de caracteres ARGUMENTS são analisados na lista sys.argv usando espaço em branco como delimitador.
Exemplo: Executar um projeto de notebook com parâmetros¶
O exemplo a seguir passa dois argumentos (env e prod) usando ARGUMENTS = “env prod”.
O primeiro elemento (sys.argv[0]) é o nome de arquivo do notebook, seguido dos argumentos separados por espaço.
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';
Visualizar todos os argumentos¶
Para inspecionar a lista completa de parâmetros passados para a sessão, use o módulo sys.
import sys
print(sys.argv)
Exemplo de saída:
['exampletestSCOS.ipynb', 'env', 'prod']
Impressão de cada argumento¶
Para processar ou registrar cada parâmetro individualmente, faça um loop pela lista sys.argv.
import sys
for arg in sys.argv:
print(arg)
Exemplo de saída:
exampletestSCOS.ipynb
env
prod
Acesso a um argumento específico¶
Os parâmetros são acessados por índice na lista. Como sys.argv[0] é o nome do notebook, o primeiro parâmetro do usuário começa em index[1].
import sys
# Access the first user parameter
first_param = sys.argv[1]
print(first_param)
Exemplo de saída:
env
Para obter detalhes completos de sintaxe e parâmetros, consulte EXECUTE NOTEBOOK PROJECT.