Guia

VS Code para Python: Configuração Completa

Aprenda a configurar o Visual Studio Code para desenvolvimento Python. Extensões essenciais, debugging, linting, formatação e atalhos

5 min de leitura

Introdução

O Visual Studio Code (VS Code) é o editor de código mais popular entre desenvolvedores Python. Gratuito, leve e altamente extensível, ele oferece uma experiência de desenvolvimento completa quando configurado corretamente.

Neste guia, vamos configurar o VS Code do zero para Python, incluindo extensões essenciais, debugging, linting, formatação automática e atalhos úteis.

Instalando o VS Code

Download

Acesse code.visualstudio.com e baixe a versão para seu sistema operacional. A instalação é simples — siga o assistente padrão.

Comando de terminal

Depois de instalar, abra o VS Code e pressione Cmd + Shift + P (macOS) ou Ctrl + Shift + P (Windows/Linux). Digite “shell command” e selecione “Install ‘code’ command in PATH”. Isso permite abrir projetos pelo terminal:

code meu-projeto/

Extensões essenciais

Python (Microsoft)

A extensão oficial da Microsoft é obrigatória. Ela fornece:

  • IntelliSense (autocompletar inteligente)
  • Linting integrado
  • Debugging
  • Gerenciamento de ambientes virtuais
  • Jupyter Notebooks

Instale procurando por “Python” no marketplace de extensões (Ctrl + Shift + X) ou pelo terminal:

code --install-extension ms-python.python

Pylance

O Pylance é o servidor de linguagem da Microsoft para Python. Ele oferece verificação de tipos, autocompletar avançado e análise estática. Geralmente é instalado automaticamente com a extensão Python.

Ruff

O Ruff é um linter e formatador extremamente rápido para Python, escrito em Rust. Ele substitui ferramentas como Flake8, isort e Black:

code --install-extension charliermarsh.ruff

Python Indent

Corrige a indentação automática do Python no VS Code, que nem sempre funciona perfeitamente:

code --install-extension KevinRose.vsc-python-indent

autoDocstring

Gera automaticamente docstrings para funções e classes Python:

code --install-extension njpwerner.autodocstring

Python Test Explorer

Interface visual para executar e visualizar testes:

code --install-extension LittleFoxTeam.vscode-python-test-adapter

Configurações recomendadas

Abra as configurações do VS Code (Ctrl + ,) e clique no ícone de documento no canto superior direito para editar o settings.json. Adicione ou ajuste as seguintes configurações:

{
    // Python
    "python.defaultInterpreterPath": "python3",
    "python.terminal.activateEnvironment": true,

    // Editor
    "editor.formatOnSave": true,
    "editor.rulers": [88],
    "editor.tabSize": 4,
    "editor.insertSpaces": true,
    "editor.wordWrap": "on",

    // Ruff (linting e formatação)
    "[python]": {
        "editor.defaultFormatter": "charliermarsh.ruff",
        "editor.codeActionsOnSave": {
            "source.fixAll.ruff": "explicit",
            "source.organizeImports.ruff": "explicit"
        }
    },

    // Testes
    "python.testing.pytestEnabled": true,
    "python.testing.unittestEnabled": false,

    // Terminal
    "terminal.integrated.defaultProfile.linux": "bash",
    "terminal.integrated.defaultProfile.osx": "zsh",

    // Arquivos
    "files.trimTrailingWhitespace": true,
    "files.insertFinalNewline": true,
    "files.associations": {
        "*.py": "python"
    }
}

Configurando o interpretador Python

O VS Code precisa saber qual interpretador Python usar. Isso é especialmente importante quando você tem múltiplas versões ou ambientes virtuais.

  1. Pressione Ctrl + Shift + P (ou Cmd + Shift + P no macOS).
  2. Digite “Python: Select Interpreter”.
  3. Escolha o interpretador desejado da lista.

Se você tem um ambiente virtual no projeto, o VS Code geralmente o detecta automaticamente. Procure o interpretador em ./venv/bin/python ou ./.venv/bin/python.

Debugging (depuração)

O VS Code tem um debugger Python integrado e poderoso.

Configuração básica

  1. Abra um arquivo Python.
  2. Clique na margem esquerda ao lado de um número de linha para adicionar um breakpoint (ponto de parada).
  3. Pressione F5 ou clique em Run > Start Debugging.
  4. Selecione “Python File” na lista que aparece.

Configuração avançada (launch.json)

Para projetos mais complexos, crie um arquivo .vscode/launch.json:

{
    "version": "0.2.0",
    "configurations": [
        {
            "name": "Python: Arquivo Atual",
            "type": "debugpy",
            "request": "launch",
            "program": "${file}",
            "console": "integratedTerminal"
        },
        {
            "name": "Python: Django",
            "type": "debugpy",
            "request": "launch",
            "program": "${workspaceFolder}/manage.py",
            "args": ["runserver"],
            "django": true
        },
        {
            "name": "Python: FastAPI",
            "type": "debugpy",
            "request": "launch",
            "module": "uvicorn",
            "args": ["main:app", "--reload"]
        }
    ]
}

Usando o debugger

Durante a depuração, você tem acesso a:

  • Variables: Visualize o valor de todas as variáveis no escopo atual.
  • Watch: Adicione expressões para monitorar.
  • Call Stack: Veja a pilha de chamadas de funções.
  • Debug Console: Execute expressões Python no contexto atual.

Atalhos úteis durante o debugging:

AtalhoAção
F5Continuar execução
F10Pular para próxima linha (Step Over)
F11Entrar na função (Step Into)
Shift + F11Sair da função (Step Out)
Shift + F5Parar depuração

Linting e formatação

Ruff como linter e formatador

Com a extensão Ruff instalada e as configurações acima, seu código será automaticamente:

  • Formatado ao salvar: Indentação, espaçamento e quebras de linha são ajustados.
  • Verificado em tempo real: Problemas aparecem sublinhados no editor.
  • Imports organizados: Os imports são ordenados e agrupados ao salvar.

Configurando o Ruff

Crie um arquivo ruff.toml na raiz do projeto para personalizar as regras:

line-length = 88
target-version = "py312"

[lint]
select = ["E", "F", "I", "N", "W", "UP"]

[format]
quote-style = "double"
indent-style = "space"

Atalhos essenciais para Python

AtalhoAção
Ctrl + Shift + PPaleta de comandos
Ctrl + PAbrir arquivo por nome
Ctrl + Shift + XMarketplace de extensões
Ctrl + ``Abrir/fechar terminal integrado
F2Renomear símbolo (variável, função)
F12Ir para definição
Alt + F12Espiar definição (peek)
Ctrl + Shift + FBuscar em todos os arquivos
Ctrl + DSelecionar próxima ocorrência
Ctrl + /Comentar/descomentar linha

No macOS, substitua Ctrl por Cmd na maioria dos atalhos.

Snippets úteis

O VS Code permite criar snippets personalizados. Vá em File > Preferences > Configure User Snippets > python.json e adicione:

{
    "Main block": {
        "prefix": "main",
        "body": [
            "def main():",
            "    ${1:pass}",
            "",
            "",
            "if __name__ == \"__main__\":",
            "    main()"
        ]
    },
    "Try/Except": {
        "prefix": "tryex",
        "body": [
            "try:",
            "    ${1:pass}",
            "except ${2:Exception} as e:",
            "    ${3:print(f\"Erro: {e}\")}"
        ]
    }
}

Integração com Git

O VS Code tem suporte nativo a Git excelente:

  • Source Control (Ctrl + Shift + G): Visualize mudanças, faça commits e gerencie branches.
  • GitLens (extensão): Adiciona blame annotations, histórico de arquivos e mais.
  • Diff viewer: Compare versões de arquivos lado a lado.

Próximos passos

Com o VS Code configurado, você está pronto para desenvolver em Python com produtividade. Recomendamos explorar: