Partilhar via


Comece a usar Python para desenvolvimento web no Windows

A seguir está um guia passo a passo para você começar a usar Python para desenvolvimento web no Windows, usando o Windows Subsystem for Linux (WSL).

Configurar seu ambiente de desenvolvimento

Recomendamos a instalação do Python no WSL ao criar aplicativos Web. Muitos dos tutoriais e instruções para desenvolvimento web Python são escritos para usuários Linux e usam ferramentas de empacotamento e instalação baseadas em Linux. A maioria dos aplicativos Web também é implantada no Linux, portanto, isso garantirá que você tenha consistência entre seus ambientes de desenvolvimento e produção.

Se você estiver usando Python para algo diferente de desenvolvimento web, recomendamos que você instale o Python diretamente no Windows usando a Microsoft Store. A WSL não suporta desktops ou aplicativos GUI (como PyGame, Gnome, KDE, etc). Instale e use Python diretamente no Windows para esses casos. Se você é novo no Python, veja nosso guia: Comece a usar Python no Windows para iniciantes. Se você estiver interessado em automatizar tarefas comuns em seu sistema operacional, consulte nosso guia: Comece a usar Python no Windows para scripts e automação. Para alguns cenários avançados, você pode considerar o download de uma versão específica do Python diretamente do python.org ou considerar a instalação de uma alternativa, como Anaconda, Jython, PyPy, WinPython, IronPython, etc. Só recomendamos isso se você for um programador Python mais avançado com uma razão específica para escolher uma implementação alternativa.

Instalar o Subsistema Windows para Linux

O WSL permite que você execute um ambiente de linha de comando GNU/Linux integrado diretamente com o Windows e suas ferramentas favoritas, como Visual Studio Code, Outlook, etc. Geralmente recomendamos o uso do WSL 2 para o trabalho de desenvolvimento web Python.

Para habilitar e instalar o WSL 2, consulte a documentação de instalação do WSL. Essas etapas incluirão a escolha de uma distribuição Linux (por exemplo, Ubuntu).

Depois de instalar o WSL e uma distribuição Linux, abra a distribuição Linux (ela pode ser encontrada no menu Iniciar do Windows) e verifique a versão e o codinome usando o comando: lsb_release -dc.

Recomendamos atualizar sua distribuição Linux regularmente, inclusive imediatamente após a instalação, para garantir que você tenha os pacotes mais recentes. O Windows não processa automaticamente esta atualização. Para atualizar sua distribuição, use o comando: sudo apt update && sudo apt upgrade.

Sugestão

Considere instalar o novo Windows Terminal disponível na Microsoft Store para ativar múltiplas abas (alternar rapidamente entre várias linhas de comando do Linux, Command Prompt do Windows, PowerShell, Azure CLI, etc.), criar atalhos de teclado personalizados (atalhos de teclado para abrir ou fechar abas, copiar e colar, etc.), usar a funcionalidade de pesquisa e configurar temas personalizados (esquemas de cores, estilos e tamanhos de fonte, imagem de fundo/desfoque/transparência). Mais informações.

Configurar o Visual Studio Code

Aproveite o IntelliSense , Linting , suporte a depuração , os trechos de código e o teste de unidade usando o VS Code. O VS Code integra-se muito bem com o Subsistema Windows para Linux, fornecendo um de terminal integrado para estabelecer um fluxo de trabalho perfeito entre seu editor de código e sua linha de comando, além de suportar Git para controle de versão com comandos comuns do Git (adicionar, confirmar, empurrar, puxar) incorporados diretamente na interface do usuário.

  1. Baixe e instale o VS Code para Windows. O VS Code também está disponível para Linux, mas o Subsistema Windows para Linux não suporta aplicativos GUI, então precisamos instalá-lo no Windows. Não se preocupe, você ainda poderá se integrar com sua linha de comando e ferramentas do Linux usando o Remote - WSL Extension.

  2. Instale a extensão Remote - WSL no VS Code. Isso permite que use o WSL como o seu ambiente de desenvolvimento integrado e gerir a compatibilidade e os caminhos automaticamente para si. Mais informações.

Importante

Se você já tiver o VS Code instalado, precisará garantir que tenha a versão 1.35 de maio ou posterior para instalar a extensão WSL. Não recomendamos o uso do WSL no VS Code sem a extensão Remote-WSL, pois você perderá o suporte para preenchimento automático, depuração, linting, etc. Curiosidade: Esta extensão WSL está instalada em $HOME/.vscode-server/extensions.

Criar um novo projeto

Vamos criar um novo diretório de projeto em nosso sistema de arquivos Linux (Ubuntu) que trabalharemos com aplicativos e ferramentas Linux usando o VS Code.

  1. Feche o VS Code e abra o Ubuntu (sua linha de comando WSL) indo ao menu Iniciar (ícone inferior esquerdo do Windows) e digitando: "Ubuntu".

  2. Na sua linha de comando do Ubuntu, navegue até onde você deseja colocar seu projeto e crie um diretório para ele: mkdir HelloWorld.

terminal Ubuntu

Sugestão

Uma coisa importante a lembrar ao usar o Windows Subsystem for Linux (WSL) é que agora você está trabalhando entre dois sistemas de arquivos diferentes: 1) seu sistema de arquivos do Windows e 2) seu sistema de arquivos Linux (WSL), que é o Ubuntu para o nosso exemplo. Você precisará prestar atenção onde você instala pacotes e armazena arquivos. Você pode instalar uma versão de uma ferramenta ou pacote no sistema de arquivos do Windows e uma versão completamente diferente no sistema de arquivos Linux. A atualização da ferramenta no sistema de arquivos do Windows não terá efeito sobre a ferramenta no sistema de arquivos Linux e vice-versa. WSL monta as unidades fixas em seu computador sob a /mnt/<drive> pasta em sua distribuição Linux. Por exemplo, a unidade Windows C: está montada em /mnt/c/. Você pode acessar seus arquivos do Windows a partir do terminal Ubuntu e usar aplicativos e ferramentas Linux nesses arquivos e vice-versa. Recomendamos trabalhar no sistema de arquivos Linux para desenvolvimento web Python, dado que grande parte das ferramentas da web é originalmente escrita para Linux e implantada em um ambiente de produção Linux. Ele também evita misturar a semântica do sistema de ficheiros (como o facto de o Windows não diferenciar entre maiúsculas e minúsculas nos nomes de ficheiros). Dito isso, o WSL agora suporta saltar entre os sistemas de arquivos Linux e Windows, para que você possa hospedar seus arquivos em qualquer um deles. Mais informações.

Instale Python, pip e venv

O Ubuntu vem com o Python 3.6 já instalado, mas não vem com alguns dos módulos que você pode esperar obter com outras instalações do Python. Ainda precisaremos instalar pip, o gerenciador de pacotes padrão para Python, e venv, o módulo padrão usado para criar e gerenciar ambientes virtuais leves. Lembre-se de que você pode precisar atualizar sua distribuição Linux para que ela tenha a versão mais recente usando o comando: sudo apt update && sudo apt upgrade.

  1. Confirme que o Python3 já está instalado abrindo seu terminal Ubuntu e digitando: python3 --version. Isso deve retornar seu número de versão do Python. Se você precisar atualizar sua versão do Python, primeiro atualize sua versão do Ubuntu digitando: sudo apt update && sudo apt upgrade, em seguida, atualize o Python usando sudo apt upgrade python3.

  2. Instale pip digitando: sudo apt install python3-pip. O Pip permite que você instale e gerencie pacotes adicionais que não fazem parte da biblioteca padrão do Python.

  3. Instale venv digitando: sudo apt install python3-venv.

Criar um ambiente virtual

O uso de ambientes virtuais é uma prática recomendada para projetos de desenvolvimento Python. Ao criar um ambiente virtual, você pode isolar suas ferramentas de projeto e evitar conflitos de versão com ferramentas para seus outros projetos. Por exemplo, você pode estar mantendo um projeto da Web mais antigo que requer a estrutura da Web do Django 1.2, mas então um novo projeto empolgante aparece usando o Django 2.2. Se você atualizar o Django globalmente, fora de um ambiente virtual, poderá ter alguns problemas de controle de versão mais tarde. Além de evitar conflitos de versão acidentais, os ambientes virtuais permitem instalar e gerenciar pacotes sem privilégios administrativos.

  1. Abra o terminal e, dentro da pasta do projeto HelloWorld , use o seguinte comando para criar um ambiente virtual chamado .venv: python3 -m venv .venv.

  2. Para ativar o ambiente virtual, digite: source .venv/bin/activate. Se funcionou, você deve ver (.venv) antes do prompt de comando. Agora você tem um ambiente autônomo pronto para escrever código e instalar pacotes. Quando terminar o ambiente virtual, digite o seguinte comando para desativá-lo: deactivate.

    Criar um ambiente virtual

Sugestão

Recomendamos criar o ambiente virtual dentro do diretório no qual você planeja ter seu projeto. Como cada projeto deve ter seu próprio diretório separado, cada um terá seu próprio ambiente virtual, portanto, não há necessidade de nomenclatura exclusiva. Nossa sugestão é usar o nome .venv para seguir a convenção Python. Algumas ferramentas (como pipenv) também usam esse nome como padrão se você instalar no diretório do projeto. Você não deseja usar .env , pois isso entra em conflito com arquivos de definição de variável de ambiente. Geralmente, não recomendamos nomes sem ponto inicial, pois não é necessário ter o ls constantemente a lembrar que o diretório existe. Também recomendamos adicionar .venv ao seu arquivo .gitignore. (Aqui está o modelo gitignore padrão do GitHub para Python para referência.) Para obter mais informações sobre como trabalhar com ambientes virtuais no VS Code, consulte Usando ambientes Python no VS Code.

Abrir uma janela de terminal WSL no VS Code

O VS Code usa a extensão WSL (instalada anteriormente) para tratar seu subsistema Linux como um servidor remoto. Isso permite que você use o WSL como seu ambiente de desenvolvimento integrado. Mais informações.

  1. Abra sua pasta de projeto no VS Code do seu terminal do Ubuntu digitando: code . (o "." diz ao VS Code para abrir a pasta atual).

  2. Feche o terminal Ubuntu. No futuro, usaremos o terminal WSL integrado ao VS Code.

  3. Abra o terminal WSL no VS Code pressionando Ctrl+` (usando o caractere backtick) ou selecionando Exibir>Terminal. Isso abrirá uma linha de comando bash (WSL) no seu terminal do Ubuntu, direcionada para o caminho da pasta do projeto que você criou.

    VS Code com terminal WSL

Instale a extensão Microsoft Python

Talvez seja necessário instalar as extensões VS Code para sua instalação WSL. Algumas extensões já instaladas localmente no VS Code não estarão automaticamente disponíveis. Mais informações.

  1. Abra a janela VS Code Extensions digitando Ctrl+Shift+X (ou use o menu para navegar até Exibir>extensões).

  2. Na parte superior caixa Extensões de Pesquisa no Marketplace, digite: Python.

  3. Encontre o Python (ms-python.python) pela extensão Microsoft e selecione o botão Instalar no WSL: [nome da distribuição].

  4. Quando a extensão terminar de instalar, você verá uma seção WSL: [distribution name] - Installed na janela VS Code Extensions mostrando que você instalou a extensão Python.

Execute um programa Python simples

Python é uma linguagem interpretada e suporta diferentes tipos de interpretadores (Python2, Anaconda, PyPy, etc). O VS Code deve usar por padrão o intérprete associado ao seu projeto. Se você tiver um motivo para alterá-lo, selecione o interpretador atualmente exibido na barra azul na parte inferior da janela do VS Code ou abra a Paleta de Comandos (Ctrl+Shift+P) e digite o comando Python: Select Interpreter. Isso exibirá uma lista dos interpretadores Python que você instalou no momento. Saiba mais sobre como configurar ambientes Python.

Vamos criar e executar um programa Python simples como um teste e garantir que temos o interpretador Python correto selecionado.

  1. Abra a janela do VS Code File Explorer digitando Ctrl+Shift+E (ou use o menu para navegar até View>Explorer).

  2. Se ainda não estiver aberto, abra seu terminal WSL integrado digitando Ctrl+Shift+' e verifique se o diretório atual é a pasta do projeto python HelloWorld .

  3. Crie um arquivo python digitando: touch test.py. Você deve ver o arquivo que você acabou de criar aparecer na janela do Explorer sob as pastas .venv e .vscode já no diretório do projeto.

  4. Selecione o arquivo test.py que você acabou de criar na janela do Explorer para abri-lo no VS Code. Como o .py em nosso nome de arquivo informa ao VS Code que este é um arquivo Python, a extensão Python que você carregou anteriormente escolherá e carregará automaticamente um interpretador Python que você verá exibido na parte inferior da janela do VS Code.

    Selecione o interpretador Python no VS Code

  5. Cole este código Python no seu ficheiro test.py e, em seguida, guarde o ficheiro (Ctrl+S):

    print("Hello World")
    
  6. Para executar o programa Python "Hello World" que acabamos de criar, selecione o arquivo test.py na janela do VS Code Explorer e, em seguida, clique com o botão direito do mouse no arquivo para exibir um menu de opções. Selecione Executar arquivo Python no Terminal. Como alternativa, na janela do terminal WSL integrado, digite: python test.py para executar seu programa "Hello World". O interpretador Python imprimirá "Hello World" na janela do seu terminal.

Parabéns;. Você está configurado para criar e executar programas Python! Agora vamos tentar criar um aplicativo Hello World com dois dos frameworks web Python mais populares: Flask e Django.

Tutorial Olá Mundo para Flask

Flask é um framework de aplicação web para Python. A documentação do Flask oferece orientações sobre como começar e um tutorial mais detalhado sobre como criar uma aplicação pequena, mas completa.

Seguindo os passos abaixo, você pode criar um pequeno aplicativo "Hello World" Flask usando VS Code e WSL.

  1. Abra o Ubuntu (sua linha de comando WSL) indo para o menu Iniciar (ícone inferior esquerdo do Windows) e digitando: "Ubuntu".

  2. Crie um diretório para o seu projeto: mkdir HelloWorld-Flaske, em seguida, cd HelloWorld-Flask para entrar no diretório.

  3. Crie um ambiente virtual para instalar suas ferramentas de projeto: python3 -m venv .venv

  4. Abra seu projeto HelloWorld-Flask no VS Code digitando o comando: code .

  5. Dentro do VS Code, abra seu terminal WSL integrado (também conhecido como Bash) digitando Ctrl+Shift+' (sua pasta de projeto HelloWorld-Flask já deve estar selecionada). Feche sua linha de comando do Ubuntu, pois estaremos trabalhando no terminal WSL integrado com o VS Code no futuro.

  6. Ative o ambiente virtual que você criou na etapa #3 usando seu terminal Bash no VS Code: source .venv/bin/activate. Se funcionou, deves ver (.venv) antes da linha de comando.

  7. Instale o Flask no ambiente virtual digitando: python3 -m pip install flask. Verifique se ele está instalado digitando: python3 -m flask --version.

  8. Crie um novo arquivo para seu código Python: touch app.py

  9. Abra o ficheiro app.py no Explorador de Ficheiros do VS Code (Ctrl+Shift+Ee, em seguida, selecione o ficheiro app.py). Isso ativará a extensão Python para escolher um interpretador. O padrão deve ser Python 3.6.8 64-bit ('.venv': venv). Observe que ele também detetou seu ambiente virtual.

    Ambiente virtual ativado

  10. No app.py, adicione código para importar Flask e crie uma instância do objeto Flask:

    from flask import Flask
    app = Flask(__name__)
    
  11. Também em app.py, adicione uma função que retorna conteúdo, neste caso uma cadeia de caracteres simples. Use o decorador app.route da Flask para mapear a rota de URL "/" para essa função.

    @app.route("/")
    def home():
        return "Hello World! I'm using Flask."
    

    Sugestão

    Você pode usar vários decoradores na mesma função, um por linha, dependendo de quantas rotas diferentes você deseja mapear para a mesma função.

  12. Salve o arquivo app.py (Ctrl+S).

  13. No terminal, execute o aplicativo digitando o seguinte comando:

    python3 -m flask run
    

    Isso executa o servidor de desenvolvimento Flask. O servidor de desenvolvimento procura app.py por padrão. Quando você executa Flask, você deve ver uma saída semelhante à seguinte:

    (env) user@USER:/mnt/c/Projects/HelloWorld$ python3 -m flask run
     * Environment: production
       WARNING: This is a development server. Do not use it in a production deployment.
       Use a production WSGI server instead.
     * Debug mode: off
     * Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)
    
  14. O Visual Studio iniciará uma notificação informando "Seu aplicativo agora em execução na porta 5000 está disponível". Clique no botão Abrir no navegador . Ou, você pode Ctrl+Clique no http://127.0.0.1:5000/ URL no terminal. Deverá ver a seguinte mensagem no seu browser:

    Olá, mundo! Estou usando Flask.

  15. Observe que quando você visita uma URL como "/", uma mensagem aparece no terminal de depuração mostrando a solicitação HTTP:

    127.0.0.1 - - [19/Jun/2019 13:36:56] "GET / HTTP/1.1" 200 -
    
  16. Pare o aplicativo usando Ctrl+C no terminal.

Sugestão

Se você quiser usar um nome de arquivo diferente do app.py, como program.py, defina uma variável de ambiente chamada FLASK_APP e defina seu valor para o arquivo escolhido. O servidor de desenvolvimento do Flask, em seguida, usa o valor de FLASK_APP em vez do arquivo padrão app.py. Para obter mais informações, consulte a documentação do Flask.

Parabéns, você criou uma aplicação web Flask usando Visual Studio Code e Windows Subsystem para Linux! Para obter um tutorial mais detalhado usando VS Code e Flask, consulte Flask Tutorial in Visual Studio Code.

Olá mundo tutorial para Django

Django é um framework de aplicação web para Python. Neste breve tutorial, você criará um pequeno aplicativo Django "Hello World" usando o VS Code e o WSL.

  1. Abra o Ubuntu (sua linha de comando WSL) indo para o menu Iniciar (ícone inferior esquerdo do Windows) e digitando: "Ubuntu".

  2. Crie um diretório para o seu projeto: mkdir HelloWorld-Djangoe, em seguida, cd HelloWorld-Django para entrar no diretório.

  3. Crie um ambiente virtual para instalar suas ferramentas de projeto: python3 -m venv .venv

  4. Abra seu projeto HelloWorld-Django no VS Code digitando o comando: code .

  5. Dentro do VS Code, abra seu terminal WSL integrado (também conhecido como Bash) digitando Ctrl+Shift+' (sua pasta de projeto HelloWorld-Django já deve estar selecionada). Feche sua linha de comando do Ubuntu, pois estaremos trabalhando no terminal WSL integrado com o VS Code no futuro.

  6. Ative o ambiente virtual que você criou na etapa #3 usando seu terminal Bash no VS Code: source .venv/bin/activate. Se funcionou, deves ver (.venv) antes da linha de comando.

  7. Instale o Django no ambiente virtual com o comando: python3 -m pip install django. Verifique se ele está instalado digitando: python3 -m django --version.

  8. Em seguida, execute o seguinte comando para criar o projeto Django:

    django-admin startproject web_project .
    

    O comando startproject assume (pelo uso de . no final) que a pasta atual é a pasta do projeto e cria o seguinte dentro dela:

    • manage.py: O utilitário administrativo de linha de comando Django para o projeto. Execute comandos administrativos para o projeto usando python manage.py <command> [options].

    • Uma subpasta chamada web_project, que contém os seguintes arquivos:

      • __init__.py: um arquivo vazio que informa ao Python que esta pasta é um pacote Python.
      • wsgi.py: um ponto de entrada para servidores Web compatíveis com WSGI para servir o seu projeto. Normalmente, deixa-se este arquivo as-is, pois ele fornece os ganchos para servidores web de produção.
      • asgi.py: um ponto de entrada para servidores web compatíveis com ASGI para servir o seu projeto. Normalmente, deixa-se este arquivo as-is, pois ele fornece os ganchos para servidores web de produção.
      • settings.py: contém configurações para o projeto Django, que você modifica durante o desenvolvimento de um aplicativo Web.
      • urls.py: contém um índice para o projeto Django, que você também modifica no decorrer do desenvolvimento.
  9. Para verificar o projeto Django, inicie o servidor de desenvolvimento do Django usando o comando python3 manage.py runserver. O servidor é executado na porta padrão 8000, onde deverás ver uma saída semelhante à seguinte na janela do terminal:

    Performing system checks...
    
    System check identified no issues (0 silenced).
    
    June 20, 2019 - 22:57:59
    Django version 2.2.2, using settings 'web_project.settings'
    Starting development server at http://127.0.0.1:8000/
    Quit the server with CONTROL-C.
    

    Quando você executa o servidor pela primeira vez, ele cria um banco de dados SQLite padrão no arquivo db.sqlite3, que se destina a fins de desenvolvimento, mas pode ser usado na produção para aplicativos Web de baixo volume. Além disso, o servidor web integrado do Django destina-se apenas para fins de desenvolvimento local. No entanto, quando você implanta em um host, o Django usa o servidor web do host. O wsgi.py módulo no projeto Django cuida da conexão com os servidores de produção.

    Se desejar usar uma porta diferente da 8000 padrão, especifique o número da porta na linha de comando, como python3 manage.py runserver 5000.

  10. O Visual Studio iniciará uma notificação informando "Seu aplicativo agora em execução na porta 8000 está disponível". Clique no botão Abrir no navegador . Ou utilize o URL na janela de saída do terminal para abrir seu navegador padrão nesse endereço. Se o Django estiver instalado corretamente e o projeto for válido, você verá uma página padrão. A janela de saída do terminal VS Code também mostra o log do servidor.

  11. Quando terminar, feche a janela do navegador e pare o servidor no VS Code usando Ctrl+C como indicado na janela de saída do terminal.

  12. Agora, para criar um aplicativo Django, execute o comando do utilitário administrativo na pasta do startapp projeto (onde manage.py reside):

    python3 manage.py startapp hello
    

    O comando cria uma pasta chamada hello que contém vários arquivos de código e uma subpasta. Destes, você trabalha frequentemente com views.py (que contém as funções que definem páginas em seu aplicativo Web) e models.py (que contém classes que definem seus objetos de dados). A migrations pasta é usada pelo utilitário administrativo do Django para gerenciar versões do banco de dados, conforme discutido mais adiante neste tutorial. Há também os arquivos apps.py (configuração do aplicativo), admin.py (para criar uma interface administrativa) e tests.py (para testes), que não são abordados aqui.

  13. Modifique hello/views.py para corresponder ao código a seguir, que cria uma única exibição para a página inicial do aplicativo:

    from django.http import HttpResponse
    
    def home(request):
        return HttpResponse("Hello, Django!")
    
  14. Crie um arquivo, hello/urls.py, com o conteúdo abaixo. O urls.py arquivo é onde você especifica padrões para rotear URLs diferentes para suas exibições apropriadas. O código abaixo contém uma rota para mapear a URL raiz do aplicativo ("") para a views.home função que você acabou de adicionar a hello/views.py:

    from django.urls import path
    from hello import views
    
    urlpatterns = [
        path("", views.home, name="home"),
    ]
    
  15. A web_project pasta também contém um urls.py arquivo, que é onde o roteamento de URL é realmente manipulado. Abra web_project/urls.py e modifique-o para corresponder ao código a seguir (você pode manter os comentários instrutivos, se quiser). Este código integra o hello/urls.py da aplicação utilizando o django.urls.include, que mantém as rotas da aplicação dentro da própria aplicação. Essa separação é útil quando um projeto contém vários aplicativos.

    from django.contrib import admin
    from django.urls import include, path
    
    urlpatterns = [
        path("", include("hello.urls")),
    ]
    
  16. Salve todos os arquivos modificados.

  17. No VS Code Terminal, execute o servidor de desenvolvimento com python3 manage.py runserver e abra um navegador e aceda a http://127.0.0.1:8000/ para ver uma página que renderiza "Olá, Django".

Parabéns, você criou uma aplicação web Django usando VS Code e Windows Subsystem para Linux! Para obter um tutorial mais detalhado usando o VS Code e o Django, consulte Tutorial do Django no Visual Studio Code.

Recursos adicionais