Notebooks Jupyter
Contents
Notebooks Jupyter¶
Vamos usar primariamente os notebooks Jupyter neste livro como forma de escrever e compartilhar código e análises. De acordo com a equipe mantenedora do projeto Jupyter
:
O notebook Jupyter é uma aplicação web de código aberto que permite criar e compartilhar código, equações, visualizações e texto narrativo. Usos incluem: limpeza e transformação de dados, simulação numérica, modelagem estatística, visualização de dados, aprendizado de máquina e muito mais.
Como você pode ver no exemplo abaixo, um notebook Jupyter permite alternar, no mesmo documento, partes de código e partes formatadas em texto (e mais que texto, como veremos) por meio de uma linguagem de marcação leve chamada de Markdown
.

Fig. 7 Exemplo de notebook Jupyter¶
O nome “Jupyter” é um anagrama de Julia, Python e (&) R (as três linguagens originais suportadas pelo projeto), além de ser uma homenagem a Galileu, que usava cadernos (notebooks) para documentar seus achados, particularmente das luas de Júpiter .
Veja também
Mais informações sobre o projeto e documentação podem ser encontradas no site oficial do projeto Jupyter. Apesar de ser originalmente pensado nas três linguagens originais (Julia, Python e R), hoje o projeto Jupyter dá suporte a diversas linguagens. O repositório oficial dá acesso a todas as versões disponíveis.
Originalmente pensado somente para o modelo de organização de trabalho em notebooks, o projeto Jupyter tem ido para uma direção que se assemelha a desenvolver uma IDE centrada nos notebooks - a próxima iteração do projeto, Jupyter lab
. Atualmente recomendamos mais o uso do Jupyter lab
que notebooks puros (e essa é a recomendação da equipe mantenedora do projeto).
De forma resumida, o notebook clássico oferece acesso aos notebooks e a poucas ferramentas de gestão do seu projeto de análise, enquanto o Jupyter lab
, evoluiu para uma IDE centrada nos notebooks. O uso de um notebook, no entanto, é o mesmo em ambos. Ambos vêm instalados na distribuição Anaconda
(ver menu principal).
Caso você não tenha instalado anteriormente, siga os passos seguintes. Para instalar o Jupyter lab
:
pip install jupyterlab
Para instalar o notebook
clássico:
pip install notebook
Veja também
Caso você prefira não trabalhar com linha de comando, você pode baixar o aplicativo Jupyter lab
Desktop, acessível por interface gráfica.
Abrindo um notebook Jupyter¶
Há mais de uma forma de abrir um jupyter notebook:
Entrando pelo Anaconda Navigator, clique no ícone Jupyter (ou Jupyterlab)
Entrando direto no Jupyter ou Jupyter lab (pelo menu de programas ou no buscador do Windows)
Entrando pelo
prompt
do Anaconda,cmd
/PowerShell
outerminal
, digite o comandojupyter notebook
oujupyter-lab
Caso você utilize algum IDE:
Veja também
Veja mais detalhes de como trabalhar com notebooks Jupyter no VSCode na página oficial.
Veja mais detalhes de como trabalhar com notebooks Jupyter no PyCharm na página oficial.
Definindo local de execução¶
Conforme você tenha diversos projetos de pesquisa, é importante organizá-los em locais separados. Para tanto, é melhor executar um notebook Jupyter direto na pasta desejada. O Jupyter vai iniciar na pasta de instalação por padrão, mas você pode querer mudar isso. Entrando pelo prompt
do Anaconda, cmd
/PowerShell
ou terminal
, vá até a localização desejada e de lá execute:
cd C:/pasta ...
jupyter-lab
Alternativamente, você pode querer deixar uma pasta específica como padrão de inicialização. Siga os passos abaixo para mudar a pasta de início:
Abra o
prompt
do Anaconda,cmd
/PowerShell
outerminal
e digitejupyter notebook --generate-config
(cria um arquivo emC:\Users\username\.jupyter\jupyter_notebook_config.py
- a localização pode ser diferente em sua máquina!).Vá até o arquivo e abra em um editor de texto.
Procure a linha
#c.NotebookApp.notebook_dir = ''
Substitua pela pasta onde você quer iniciar o Jupyter
c.NotebookApp.notebook_dir = '/caminho/pasta/'
(certifique-se de usar barras normais (/
) e não invertidas)Remova a cerquilha (
#
) do início da linha para que ela seja executada
Visão geral de um notebook¶
Caso você abra um notebook sem estar num IDE (VSCode, PyCharm, etc.), você verá que o notebook é um aplicativo renderizado no seu navegador de internet padrão. Perceba que, nesse caso, a janela do prompt
do Anaconda, cmd
/PowerShell
ou terminal
deve permanecer ativa até o fim da sua sessão. O que você vê no navegador é só a parte visual (na verdade, tudo está sendo rodado naquela janela de linha de comando) e, portanto, você não deve fechá-la antes de salvar e terminar sua sessão. Caso isso ocorra, a conexão é perdida.
Ao abrir seu primeiro notebook, você verá uma janela assim:

Fig. 8 Janela inicial de um notebook Jupyter¶
Para encerrar sua sessão, use o botão
Quit
(canto superior direito)Para criar um novo notebook, selecione o botão
New
>Notebook Python 3
(canto superior direito)As linhas representam os arquivos existentes na pasta de inicialização
Cada notebook novo aberto ocupa uma nova aba/janela do seu navegador.
Os notebooks têm a seguinte visão:

Fig. 9 Exemplo de notebook Jupyter¶
Botão salvar
💾
- salva o seu notebook (1)Botão
+
- cria uma nova célula (2)Botão cortar (3)
Botão copiar (4)
Botão colar (5)
Botões para navegar pelas células (você também pode usar o teclado):
↑
: navega para cima (6)↓
: navega para baixo (7)
Botão
▶️
- executa a célula (8):se for código, executa o código
se for
Markdown
, renderiza
Botão
⏹️
- parar execução (9)Botão
⟳
- reiniciar o kernel (10)Botão
⏩
- reiniciar o kernel e executar desde o início (11)Botão
code
- mudar de código paraMarkdown
e vice-versa (12)Botão
⌨️
- abrir o menu de opções de comandos (13)
Operando um notebook Jupyter¶
Um notebook Jupyter é, no fundo, uma coleção de células - que contêm código, texto, etc. Todo notebook começa com uma célula em branco:

Fig. 10 Célula em branco (modo de edição)¶
A borda em verde indica que a célula está em modo de edição - isto é, você pode alterar o conteúdo. Toda célula nova criada vem por padrão em formato de código. Células de código começam com o texto In [ ]:
, que indica que esta célula pode conter uma entrada (In
= input) e o número da entrada ([ ]
recebe o número).
Caso você queira mudar para Markdown
(o formato de texto que usaremos), você primeiro precisa mudar para o modo comando. Este modo permite navegar pelas células de um notebook e alterar de um formato para outro (por exemplo de códgo para Markdown
e vice-versa). Para mudar de um modo para outro aperte esc
:

Fig. 11 Célula em branco (modo de comando)¶
Em seguida, digite m
para mudar para Markdown
- perceba que células Markdown
não contém In [ ]:
no início da célula. Para mudar novamente para código, digite esc
+ y
.

Fig. 12 Célula em branco (Markdown
)¶
Para ir para o modo de edição de uma célula, basta clicar ↵ Enter
.

Fig. 13 Célula em branco (Markdown
), modo de edição.¶
Você pode também alternar entre os modos por meio do botão code
(ver item acima). Em resumo:
esc
: muda de edição para comandoesc
+m
: muda paraMarkdown
esc
+y
: muda para código
↵ Enter
: muda de comando para edição
Criando e apagando células¶
Além do botão +
no menu, você tem dois atalhos importantes para criar novas células. Para criar uma célula acima da célula atual, digite a
. Caso esteja em modo de edição (borda verde), mude para o modo comando com esc
e em seguida digite a
:

Fig. 14 Criando uma célula acima com esc
+ a
¶
Contudo, na maioria das vezes, criamos células abaixo, seguindo o fluxo do desenvolvimento. Para criar uma célula abaixo da célula atual, digite b
. Caso esteja em modo de edição (borda verde), mude para o modo comando com esc
e em seguida digite b
:

Fig. 15 Criando uma célula acima com esc
+ b
¶
Para apagar uma célula, digite dd
(de delete). Caso esteja em modo de edição (borda verde), mude para o modo comando com esc
e em seguida digite dd
.
Em resumo:
Para criar uma célula acima, use
a
(ouesc
+a
, caso esteja em edição)Para criar uma célula abaixo, use
b
(ouesc
+b
, caso esteja em edição)Para apagar uma célula, vá até ela e use
dd
(ouesc
+dd
, caso esteja em edição)
Executando células¶
Além do botão ▶️
no menu, há alguns atalhos importantes para executar células:
shift
+enter
: executa a célula atual, e seleciona a célula seguinte.ctrl
+enter
: executa a célula atualalt
+enter
: executa a célula atual, insere nova célula abaixo.