---
title: "Instalando Python no Linux: Guia Completo"
url: "https://python.dev.br/guias/instalando-python-linux/"
markdown_url: "https://python.dev.br/guias/instalando-python-linux.MD"
description: "Como instalar Python no Linux usando apt, dnf, pyenv ou compilando do código-fonte. Guia completo para Ubuntu, Fedora e outras distribuições"
date: "2025-10-12"
author: ""
---

# Instalando Python no Linux: Guia Completo

Como instalar Python no Linux usando apt, dnf, pyenv ou compilando do código-fonte. Guia completo para Ubuntu, Fedora e outras distribuições


## Introdução

A maioria das distribuições Linux já vem com Python pré-instalado. Porém, nem sempre é a versão mais recente. Neste guia, vamos cobrir todas as formas de instalar ou atualizar Python no Linux, desde o gerenciador de pacotes até a compilação do código-fonte.

## Verificando a versão atual

Antes de instalar, verifique se já tem Python no sistema:

```bash
python3 --version
```

Se o comando retornar uma versão como `Python 3.10.x` ou superior, você já tem Python instalado. Dependendo da sua necessidade, pode ser suficiente.

## Método 1: Gerenciador de pacotes (mais fácil)

### Ubuntu e Debian (apt)

O Ubuntu 22.04+ e Debian 12+ já incluem Python 3.10 ou superior. Para instalar ou atualizar:

```bash
sudo apt update
sudo apt install python3 python3-pip python3-venv
```

Para instalar uma versão específica mais recente, use o PPA deadsnakes:

```bash
sudo apt install software-properties-common
sudo add-apt-repository ppa:deadsnakes/ppa
sudo apt update
sudo apt install python3.13 python3.13-venv python3.13-dev
```

### Fedora (dnf)

O Fedora geralmente inclui uma versão bem recente do Python:

```bash
sudo dnf install python3 python3-pip python3-devel
```

Para uma versão específica:

```bash
sudo dnf install python3.13
```

### Arch Linux (pacman)

O Arch Linux mantém o Python sempre atualizado:

```bash
sudo pacman -S python python-pip
```

### openSUSE (zypper)

```bash
sudo zypper install python3 python3-pip python3-devel
```

## Método 2: pyenv (recomendado para desenvolvedores)

O pyenv permite instalar e gerenciar múltiplas versões do Python sem interferir no Python do sistema. É a opção mais flexível para desenvolvedores.

### Instalando o pyenv

Primeiro, instale as dependências de compilação. No Ubuntu/Debian:

```bash
sudo apt install -y make build-essential libssl-dev zlib1g-dev \
  libbz2-dev libreadline-dev libsqlite3-dev wget curl llvm \
  libncursesw5-dev xz-utils tk-dev libxml2-dev libxmlsec1-dev \
  libffi-dev liblzma-dev
```

No Fedora:

```bash
sudo dnf install -y gcc make zlib-devel bzip2-devel readline-devel \
  sqlite-devel openssl-devel tk-devel libffi-devel xz-devel
```

Agora instale o pyenv usando o instalador automático:

```bash
curl https://pyenv.run | bash
```

Adicione as seguintes linhas ao seu `~/.bashrc` (ou `~/.zshrc` se usar Zsh):

```bash
export PYENV_ROOT="$HOME/.pyenv"
export PATH="$PYENV_ROOT/bin:$PATH"
eval "$(pyenv init -)"
```

Recarregue o terminal:

```bash
source ~/.bashrc
```

### Usando o pyenv

Listar versões disponíveis:

```bash
pyenv install --list | grep "^  3\."
```

Instalar uma versão específica:

```bash
pyenv install 3.13.1
```

Definir como versão global:

```bash
pyenv global 3.13.1
```

Definir uma versão específica para um projeto:

```bash
cd meu-projeto
pyenv local 3.12.5
```

Isso cria um arquivo `.python-version` no diretório do projeto.

## Método 3: Compilando do código-fonte

Se você precisa de uma versão que não está disponível no gerenciador de pacotes ou no pyenv, pode compilar diretamente.

### Instalando dependências

No Ubuntu/Debian:

```bash
sudo apt install -y build-essential libssl-dev zlib1g-dev \
  libbz2-dev libreadline-dev libsqlite3-dev wget curl \
  libncursesw5-dev xz-utils tk-dev libxml2-dev libxmlsec1-dev \
  libffi-dev liblzma-dev
```

### Baixando e compilando

```bash
cd /tmp
wget https://www.python.org/ftp/python/3.13.1/Python-3.13.1.tgz
tar -xzf Python-3.13.1.tgz
cd Python-3.13.1

./configure --enable-optimizations --with-ensurepip=install
make -j$(nproc)
sudo make altinstall
```

**Importante**: Use `make altinstall` em vez de `make install` para não sobrescrever o Python do sistema.

Verifique a instalação:

```bash
python3.13 --version
```

## Configurando o pip

Depois de instalar o Python, verifique o pip:

```bash
python3 -m pip --version
```

Se o pip não estiver instalado:

```bash
python3 -m ensurepip --upgrade
```

Para atualizar o pip:

```bash
python3 -m pip install --upgrade pip
```

## Criando ambientes virtuais

No Linux, é boa prática usar ambientes virtuais para cada projeto:

```bash
python3 -m venv meu_projeto_venv
source meu_projeto_venv/bin/activate
```

Com o ambiente ativo, instale pacotes normalmente:

```bash
pip install flask pandas
```

Para desativar:

```bash
deactivate
```

## Dica: não use sudo com pip

Um erro comum no Linux é usar `sudo pip install`. Isso instala pacotes globalmente e pode causar conflitos com pacotes do sistema. Sempre use ambientes virtuais ou a flag `--user`:

```bash
pip install --user nome-do-pacote
```

## Solução de problemas

### "ModuleNotFoundError: No module named 'venv'"

No Ubuntu/Debian, o módulo venv precisa ser instalado separadamente:

```bash
sudo apt install python3-venv
```

### "python: command not found" (mas python3 funciona)

Muitas distribuições não criam o link `python` por padrão. Você pode criar manualmente:

```bash
sudo update-alternatives --install /usr/bin/python python /usr/bin/python3 1
```

Ou instalar o pacote `python-is-python3` no Ubuntu:

```bash
sudo apt install python-is-python3
```

## Próximos passos

Com o Python instalado no Linux, configure seu editor de código. Recomendamos o guia [Configurando VS Code para Python](/guias/configurando-vscode-para-python/) para ter um ambiente de desenvolvimento completo.

Depois de configurar o Python, considere instalar também <a href="https://golang.com.br/blog/" target="_blank" rel="noopener" onclick="umami.track('portfolio-site-click', {source: 'python.dev.br', target: 'golang.com.br', content: 'instalando-python-linux'})">Go no Linux</a> — a instalação é simples e ter uma segunda linguagem amplia suas oportunidades no mercado.
