Uso de Jupyter

Uso de JupyterAlternar entre comando Python e MarkdownMétodos para executar comandos do sistema no Jupyter:1. Usando ! (exclamação)2. Usando %%bash (para scripts multi-linha)3. Usando os.system (módulo os do Python)4. Usando subprocess (para controle mais avançado)Exemplo prático para instalar bibliotecas Python:Verificando pacotes instalados (usando conda)Atualizar pacoes (usando conda)Para descobrir opções para baixar pacoteResumo dos comandos úteis (conda & pip)Significado de [*] no prompt do JupyterPossíveis significados:Como sair do "modo execução de comandos do sistema" após usar !?Outras opções: cancelar comando, retornar ao prompt, restartExportando conteúdo à partir do Jupyter Notebook1. Exportar apenas o código executado (sem células incompletas/erros)Opção A: Usando nbconvert (via linha de comando ou direto no Jupyter)Opção B: Exportar manualmente pelo Jupyter2. Filtrar células específicas (incluindo saídas de execução)Método 1: Usando %%writefile (dentro do próprio notebook)Método 2: Extrair células executadas programaticamente3. Juntar células corretas + saídas (para documentação)Gerar um HTML/PDF filtrado4. Ferramentas avançadas para limpeza automáticaResumo das opções:Encerrando operações no Jupyter1. Se uma célula está travada (em [*]) e você quer interrompê-la2. Se você quer "parar" o kernel temporariamente (sem fechar o notebook)3. Como reiniciar o kernel sem perder dados 4. Se você quer encerrar o Jupyter completamente Dica extra: Autoreload para evitar perdas Resumo das opções:


Alternar entre comando Python e Markdown

O Jupyter normalmente entra no "modo interpretador Pytohn", tentando excutar comandos Python tão logo seja usada a commbinação de teclas SHIFT + ENTER. Teclar apenas ENTER só muda de linha numa célula do Python.

Para sair deste "modo interpretador Python", e mudar para modo de edição Markdonw, use a combinação de teclas ESC + M. Digite a sentença Markdown e use a combinação SHIFT+ ENTER para que a sentença seja renderizadas. Note que em seguina, o Jupyter volta para o "modo interpretador Python", sem necessidade de alguma outra combinação de teclas.

Métodos para executar comandos do sistema no Jupyter:

É possível executar comandos do sistema diretamente de dentro do Jupyter Notebook, tanto em MacOS quanto em outros sistemas operacionais. Você não precisa sair do Jupyter para instalar bibliotecas ou executar comandos do terminal.

1. Usando ! (exclamação)

Você pode executar qualquer comando do terminal precedendo-o com !. Por exemplo:

Para instalar uma biblioteca Python (como pandas se estiver faltando):

2. Usando %%bash (para scripts multi-linha)

Se precisar executar vários comandos bash em sequência:

Dica extra:

Se você quer interagir com o terminal por mais tempo (ex: navegar em diretórios), use:

Mas lembre-se: alterações no terminal (como cd) não afetam o ambiente Python do Jupyter após a execução. Para isso, use os comandos do Python (ex: os.chdir()).

3. Usando os.system (módulo os do Python)

4. Usando subprocess (para controle mais avançado)

Exemplo prático para instalar bibliotecas Python:

Se seu código Python gerar um erro como ModuleNotFoundError: No module named 'seaborn', você pode instalar diretamente no notebook:

Observações importantes:

Isso elimina a necessidade de abrir um terminal separado na maioria dos casos!

Verificando pacotes instalados (usando conda)

Se o pacote não estiver instalado, o retorno não mostrará nada ou indicará # packages in environment at sem listar o pacote.

É similar ao comando pip list.

Atualizar pacoes (usando conda)

Isso atualizará o <nome_do_pacote> para a última versão compatível com ambiente atual de trabalho.

Para descobrir opções para baixar pacote

Atenção: várias linhas texto podem ser geradas!


Resumo dos comandos úteis (conda & pip)

AçãoComando CondaComando Pip (se necessário)
Verificar pacote!conda list pandas!pip show pandas
Instalar pacote!conda install pandas!pip install pandas
Atualizar pacote!conda update pandas!pip install --upgrade pandas
Listar todos os pacotes!conda list!pip list

Significado de [*] no prompt do Jupyter

O símbolo [*] ao lado do número da célula no Jupyter Notebook (ex: In [*]:) indica que a célula está em execução (processamento). Quando o código terminar de rodar, o * será substituído por um número sequencial (ex: In [1]:).

Possíveis significados:

Como sair do "modo execução de comandos do sistema" após usar !?

Quando você executa um comando do sistema com ! (ex: !ls), o Jupyter não entra em um "modo terminal" permanente—ele apenas roda aquele comando específico e volta para o ambiente Python imediatamente.

Outras opções: cancelar comando, retornar ao prompt, restart


Exportando conteúdo à partir do Jupyter Notebook

Existem várias maneiras de exportar o conteúdo do Jupyter Notebook, filtrando apenas as partes relevantes (código executado com sucesso, saídas, comentários, etc.) para um script Python limpo. Aqui estão os métodos mais eficientes:

1. Exportar apenas o código executado (sem células incompletas/erros)

Opção A: Usando nbconvert (via linha de comando ou direto no Jupyter)

Opção B: Exportar manualmente pelo Jupyter

  1. No Jupyter, vá em File > Download as > Python (.py).

  2. Isso gera um arquivo com todo o código (incluindo células não executadas ou com erros).

    • Para filtrar apenas o código válido, abra o arquivo gerado e delete manualmente as partes indesejadas.

 

2. Filtrar células específicas (incluindo saídas de execução)

Se você quer selecionar apenas células específicas (ex: as que rodaram corretamente) e gerar um script consolidado:

Método 1: Usando %%writefile (dentro do próprio notebook)

Método 2: Extrair células executadas programaticamente

Use este código para exportar apenas células executadas sem erros:

 

3. Juntar células corretas + saídas (para documentação)

Se você quer preservar saídas de execução (ex: resultados de print(), gráficos) em um relatório:

Gerar um HTML/PDF filtrado


4. Ferramentas avançadas para limpeza automática

 

Resumo das opções:

ObjetivoFerramenta/Método
Exportar código executadonbconvert --to script ou %%writefile
Filtrar apenas células válidasScript com nbformat (método 2 acima)
Manter código + saídasnbconvert --to html com tags de filtro
Limpeza automáticajupyter-clean ou extensões de IDE (VS Code, PyCharm)

Dica final:

Assim, você evita retrabalho e mantém um código funcional!

Se quiser agilizar ainda mais a limpeza de notebooks, experimente o nbstripout (remove saídas e metadados) ou o jupyterlab-code-formatter (para organizar o código automaticamente).


Encerrando operações no Jupyter

Para encerrar operações no Jupyter Notebook sem perder os dados já processados, você pode usar uma das seguintes abordagens, dependendo da situação:

 

1. Se uma célula está travada (em [*]) e você quer interrompê-la

⚠️ Cuidado:

 

2. Se você quer "parar" o kernel temporariamente (sem fechar o notebook)

 

3. Como reiniciar o kernel sem perder dados

Se você quer recarregar o kernel mas manter as variáveis já calculadas, siga este fluxo:

  1. Salve os dados processados em arquivos temporários:

    Ou para outras variáveis:

  2. Reinicie o kernel em Kernel > Restart.

  3. Recarregue os dados após a reinicialização:

    Ou:

 

4. Se você quer encerrar o Jupyter completamente

 

Dica extra: Autoreload para evitar perdas

Se você está desenvolvendo código e quer evitar reinicializações frequentes, use o autoreload para recarregar módulos automaticamente:

 

Resumo das opções:

ObjetivoAção Recomendada
Parar uma célula travada■ Interrupt Kernel ou I + I (mantém dados na memória).
Reiniciar o kernel sem perder dadosSalve variáveis em arquivos → Restart Kernel → Recarregue os dados.
Fechar o notebook com segurançaSalve o notebook + exporte dados para arquivos.

Fernando Passold, 02/04/2025