Guilherme: Olá, meu nome é Guilherme Lima.
Audiodescrição: Guilherme é uma pessoa de pele clara e olhos castanhos. Tem barba e cabelo curtos e castanhos. Usa óculos de armação quadrada. Está com uma camiseta azul.
Estamos muito felizes de ter você para aprender mais sobre Python aplicado ao back-end.
Laís: Sou Laís Urano e, juntos, vamos te acompanhar diretamente dos estúdios da Alura.
Audiodescrição: Laís é uma mulher parda, de olhos e cabelos castanhos e cabelos cacheados volumosos. Está com uma blusa preta.
Estamos com vontade de começar esse curso, pois vamos aprender muitos conteúdos importantes.
Guilherme: Python é aplicado em vários cenários do mundo de desenvolvimento, como machine learning e ciência de dados. Mas nesta formação, vamos entender que o Python pode ser usado para o desenvolvimento back-end.
Vamos começar aprendendo como a linguagem funciona, explorando assuntos como funções, classes, orientação a objetos, herança e muito mais durante toda a formação.
Neste primeiro momento, vamos criar um projeto inspirado no mundo real de pedir comida, como se fosse um serviço de delivery (entrega).
Vamos começar?
Guilherme: Chegou a hora! Vamos começar a escrever código e aprender mais sobre Python. Na atividade anterior para preparar ambiente, aprendemos como instalar o Python conforme o nosso sistema operacional.
Agora, o que vamos desenvolver nesse projeto?
Laís: A ideia do projeto é ser um aplicativo de entrega de comida. Nesse aplicativo, existirão várias funcionalidades, como o cadastro de restaurante e comidas, serviço de entrega, avaliação e tudo isso.
Vamos implementar uma dessas funcionalidades, que é exatamente a parte de cadastrar restaurantes.
Guilherme: Como estamos falando do back-end específico, não vamos criar o aplicativo. Na verdade, vamos criar uma forma de manter os dados da aplicação.
Precisamos criar um restaurante, colocar a categoria do restaurante e demais informações relacionadas ao restaurante. E outro time vai desenvolver outras partes da aplicação, inclusive o mobile.
Essa é uma das diferenças do Python aplicado para o back-end: vamos estar mais próximos dos dados do que da parte de fato que vai ser entregue para a pessoa usuária final.
Temos um protótipo feito pela equipe de design da aplicação. Queria mandar um abraço para o Rafael Balbi. Ficou muito bonito o trabalho.
Para iniciar os estudos, vamos clicar com o botão direito na área de trabalho e selecionar "Mostrar mais opções > Novo > Pasta". Vamos criar uma pasta vazia onde vamos manter todo o código relacionado a esse projeto.
Qual o nome do projeto?
Laís: Vai ser Sabor Express.
Guilherme: Dentro dessa pasta sabor-express
, vamos manter todo o código back-end que estamos desenvolvendo.
Vamos abrir o Visual Studio Code, o mesmo editor que usamos na formação de lógica de programação. Recomendamos que você o use também.
Clicamos e arrastamos a pasta sabor-express
para dentro do editor de código para abri-la. Ainda não tem nenhum arquivo nela.
Primeiro, para criar um arquivo Python, precisamos clicar nesse botão de "New file" ou atalho "CTRL + N". Agora, vamos escrever o nome do arquivo Python. Nesse caso, vamos chamar de app.py
e dar "Enter".
Dentro desse arquivo, podemos começar a escrever nosso código Python.
O VS Code pergunta se queremos instalar algumas extensões da Microsoft para ajudar no desenvolvimento. Vamos clicar em "Install" para aceitar a instalação da extensão Python.
O Python que ele está instalando não é a linguagem, especificamente. São atalhos e formas para conseguir escrever o o código de uma forma mais performática.
Como estamos trabalhando com uma linguagem de programação nova, precisamos seguir as regras da programação. Portanto, vamos criar um programa que faz o quê?
Laís: Que dá um Hello World (oi mundo)!
Guilherme: Sempre é o primeiro programa!
Na linguagem de programação JavaScript, usávamos o console.log()
ou alert()
para exibir algo. No Python, quando queremos exibir uma mensagem no terminal, usamos o comando print()
.
Dentro dos parênteses, colocamos aspas simples e escrevemos Hello World
. Salvamos o código com "Ctrl + S".
app.py
:
print('Hello World')
Para abrir o terminal integrado, apertamos o atalho "Ctrl + J". Nele, vamos escrever python
e o nome do programa que estamos utilizando, que é app.py
.
python app.py
Hello World
Ao dar um "Enter" e ele mostra a frase "Hello World".
Caso você esteja no sistema operacional do Mac, é importante conseguir diferenciar o Python 2 e o Python 3. Por quê? O Mac usa o Python 2 como sistema operacional.
Atenção: Se você estiver utilizando o Mac, você deve colocar
python3 app.py
.
Sempre que executamos no Windows, só usamos o comando python
que ele já vai utilizar a versão 3.
Executamos e conseguimos exibir o Hello World. Um clássico do livro da Bells Lab, de 1970. É um padrão muito importante.
Guilherme: Vamos começar a criar a nossa aplicação chamada Sabor Express. O que você acha de colocar um título escrito Sabor Express no topo?
Laís: Acho ótimo.
Guilherme: Dentro de um print()
, vamos colocar Sabor Express
.
Vamos precisar de um menu para conseguir cadastrar restaurantes. Essa é a nossa responsabilidade.
Quais são as opções desse menu?
Laís: É importante adicionar as informações necessárias, como cadastrar restaurante, listar restaurante e também a parte de ativar restaurante.
Em um primeiro momento, podemos colocar esses três prints.
Guilherme: Vamos adicionar três print()
de cada opção. A primeira opção vai ser 1. Cadastrar restaurante
. Agora, vamos usar o atalho "Shift + Alt + Seta para baixo" para copiar a linha onde estava o cursor do mouse.
Agora, podemos alterar os textos para colocar as opções de 2. Listar restaurantes
e 3. Ativar restaurante
.
Desse modo, temos uma opção de cadastro, exibição e ativação dos restaurantes. A ideia dessa terceira opção de ativar restaurante é que quando um restaurante é cadastrado na nossa base, ele não deve aparecer no app diretamente.
Vão ter uma série de validações que devem ser feitas. Uma vez que o local está apto a aparecer, podemos ativá-lo.
Laís: Por fim, podemos colocar uma quarta opção para sair do cadastro.
app.py
:
print('Sabor Express')
print('1. Cadastrar restaurante')
print('2. Listar restaurante')
print('3. Ativar restaurante')
print('4. Sair')
Vamos executar esse código para verificar como ficou o menu.
Dica: Você pode usar o atalho "Ctrl + B" para fechar o painel lateral do VS Code e "Ctrl + J" para abrir o terminal integrado.
Podemos maximizar ou minimizar o tamanho do terminal, clicando na seta "Restore panel size" no canto direito. Vamos executar o programa mais uma vez, usando o comando:
python app.py
Sabor Express
- Cadastrar restaurante
- Listar restaurante
- Ativar restaurante
- Sair
Após apertar "Enter", aparecem as opções de menu que estabelecemos.
Vamos fazer uma alteração para pular uma linha entre o título Sabor Express
e as opções. Para isso, vamos colocar barra invertida e a letra "N" minúscula (\n
), como aprendemos nos cursos de lógica também.
print('Sabor Express\n')
Quando apertamos "Enter" novamente no comando do terminal, aparece o título, pula uma linha e mostra as opções do menu embaixo.
Laís: Agora que temos um print()
passando uma informação para a pessoa usuária, também temos a opção de pegar uma informação dessa pessoa, utilizando o input()
no Python.
input()
Guilherme: Sempre que utilizamos o print
, queremos apenas exibir uma informação, independente de qual seja. Agora, o que queremos é o oposto: conforme mostramos as opções do menu, queremos saber o que a pessoa usuária vai escolher. Por exemplo, se ela quer cadastrar um restaurante ou listar os restaurantes, dentre outras opções.
O comando se chama input
, seguido de abre e fecha parênteses.
app.py
:
print('Sabor Express\n')
print('1. Cadastrar restaurante')
print('2. Listar restaurante')
print('3. Ativar restaurante')
print('4. Sair')
input()
Se executamos o programa com python app.py
, note que o cursor para e aguarda a digitação no terminal integrado. Ao digitar o número 2
e pressionar "Enter", o programa termina.
Assim como no print()
, conseguimos passar uma mensagem no input()
. Por exemplo, podemos colocar dentro dos parênteses, entre aspas simples, a frase "Escolha uma opção" com dois-pontos (:
) e um espaço.
Por fim, vamos adicionar um \n
no print()
da opção 4, para que pule uma linha ao exibir a mensagem.
# código omitido…
print('4. Sair\n')
input('Escolha uma opção: ')
Ao executar o programa, as opções do menu e a mensagem aparece corretamente no terminal. Vamos escolher a opção 4, que representa a opção de sair, o programa termina.
Escolha uma opção: 4
No entanto, temos um problema em nosso código: a opção que a pessoa usuária digita, desaparece. Para saber qual opção foi escolhida, precisamos armazenar essa opção.
Como podemos fazer isso?
Laís: Podemos utilizar variáveis.
No Python, podemos definir uma variável qualquer e ela armazena o valor. Não precisamos informar explicitamente o tipo de variável que estamos definindo.
Antes do input()
, podemos adicioná-la para salvar essa informação dentro de uma variável.
Guilherme: Para deixar claro o que estamos fazendo, vamos chamar essa variável de opcao_escolhida
. Ela vai ser igual a esse input()
.
Desse modo, vamos receber esse valor que foi digitado e armazenar nessa variável.
# código omitido…
opcao_escolhida = input('Escolha uma opção: ')
Diferentemente de Java e C#, não precisamos definir o tipo da variável agora, ou seja, se é uma string ou número, por exemplo. Conseguimos definir esse tipo de forma dinâmica.
Além disso, repare que usamos o underline na definição da variável.
Em cursos de lógica de programação com JavaScript e outras linguagens, existe um outro padrão: o camelCase.
Confira um artigo da Alura sobre nomenclatura e os tipos de padrões de linguagem. Nele, explicamos sobre o Camel, Pascal, Kebab e Snake case.
O camelCase é muito usado no JavaScript, onde a primeira letra da primeira palavra é minúscula e todas as primeiras letras das próximas palavras são maiúsculas. Python não utiliza esse padrão.
Também existe o PascalCase, onde a primeira letra de toda palavra é maiúscula, inclusive a primeira.
Além disso, existe o snake_case ou também conhecido como underscore case, onde separamos cada palavra com um underline. O SCREAMING_SNAKE_CASE se refere a separação com underline, porém com todas as letras em maiúsculas.
Na convenção do Python, existem momentos em que escrevemos com diferentes nomenclaturas:
Iremos aprender mais sobre funções, métodos e classes em próximos cursos.
Nesse primeiro momento, precisamos memorizar o snake_case para definir nomes de variáveis.
Para ter certeza que estamos recebendo essa variável, vamos criar um print()
. Entre aspas simples, vamos digitar a frase "Você escolheu a opção", seguido de uma vírgula e a variável opcao_escolhida
.
# código omitido…
opcao_escolhida = input('Escolha uma opção: ')
print('Você escolheu a opção', opcao_escolhida)
Salvamos o arquivo e apertamos "Ctrl + L" para limpar o terminal. Ao executar o programa mais uma vez, escolhemos a opção 2 para listar os restaurantes.
Escolha uma opção: 2
Ao pressionar "Enter", o programa informa:
Você escolheu a opção 2
De alguma forma, conseguimos já guardar essa informação e começar a trabalhar em como desenvolver cada uma dessas opções do nosso restaurante.
O curso Python: crie a sua primeira aplicação possui 101 minutos de vídeos, em um total de 55 atividades. Gostou? Conheça nossos outros cursos de Python em Programação, ou leia nossos artigos de Programação.
Matricule-se e comece a estudar com a gente hoje! Conheça outros tópicos abordados durante o curso:
Mais de 1500 cursos completamente atualizados, com novos lançamentos todas as semanas, emProgramação, Front-end, UX & Design, Data Science, Mobile, DevOps e Inovação & Gestão.
Desafios temáticos para você turbinar seu portfólio. Você aprende na prática, com exercícios e projetos que simulam o dia a dia profissional.
Webséries exclusivas com discussões avançadas sobre arquitetura de sistemas com profissionais de grandes corporações e startups.
Emitimos certificados para atestar que você finalizou nossos cursos e formações.
Mais de 1500 cursos completamente atualizados, com novos lançamentos todas as semanas, emProgramação, Front-end, UX & Design, Data Science, Mobile, DevOps e Inovação & Gestão.
Desafios temáticos para você turbinar seu portfólio. Você aprende na prática, com exercícios e projetos que simulam o dia a dia profissional.
Webséries exclusivas com discussões avançadas sobre arquitetura de sistemas com profissionais de grandes corporações e startups.
Emitimos certificados para atestar que você finalizou nossos cursos e formações.
Luri é nossa inteligência artificial que tira dúvidas, dá exemplos práticos e ajuda a mergulhar ainda mais durante as aulas. Você pode conversar com Luri até 100 mensagens por semana.
Estude a língua inglesa com um curso 100% focado em tecnologia e expanda seus horizontes profissionais.
Acesso completo
durante 1 ano
Estude 24h/dia
onde e quando quiser
Novos cursos
todas as semanas