Aula 4: Primeiros Passos com Python

A linguagem de programação mais utilizada nas placas Raspberry Pi é o Python, é a partir dele que são escritos os programas que controlam as entradas e saídas da placa. Nesta aula iremos apresentar alguns conceitos básicos sobre o Python.

O que é Python?

Python é uma linguagem de programação de alto nível (mais próximo de como os humanos falam) criada por Guido van Rossum, em 1991. Atualmente o Python é aberto, todos podem replicar e fazer alterações, e gerenciado pela fundação Python Software Foundation. A ideia principal do Python é ser uma linguagem que prioriza a legibilidade do código e que visa facilitar o esforço do programador, mesmo que isso comprometa a eficiência computacional do programa. Essa filosofia faz com que o Python seja considerada uma das linguagens mais amadas por seus usuários e que os programadores mais desejam aprender.

Logo Python

Para iniciantes, Python é uma ótima opção de primeira contato com a  programação, pois é uma linguagem clara e fácil de compreender e utilizar. Além disso, existem muitos outros usuários com quem se pode compartilhar códigos e sanar dúvidas. Essa facilidade de aprendizado fez com que a Raspberry Pi utilizasse o Python como sua principal linguagem de programação, sendo pré-instalado em muitos sistemas operacionais. Além disso, também será a linguagem de programação que utilizaremos em grande parte do nosso curso.

Python é muito utilizado em grandes empresas como Google, Yahoo!, Facebook, Spotify e centros de pesquisa como NASA e o CERN. Por utilizar ferramentas poderosas e ser fácil de aprender, muitos profissionais não programadores das mais variadas áreas passaram a utilizá-lo no trabalho, em ambientes como economia, pesquisa acadêmica, análise de dados entre outros.

Por que usar o Python?

A grande vantagem da linguagem Python é o uso da interface de programação de aplicações (do inglês, “Application Programming Interface” – API) que é um conjunto de comandos, rotinas ou padrões que podem ser adicionadas aos comandos padrão do Python com o intuito de facilitar o uso de algum processo específico. Muitas vezes as APIs são desenvolvidas e distribuídas por empresas, que vêem essa facilidade de uso como um incentivo aos programadores utilizarem seus produtos.

Um exemplo de API é a do Twitter. Ela já possui diversas funções prontas para utilizar o Twitter com pequenos comandos. Se quiser postar algo na sua página, por exemplo, basta utilizar a função update_status e pronto. Algo que levaria meses de desenvolvimento é resolvido em questão de minutos. Como é uma linguagem bastante utilizada, sempre estão sendo desenvolvidas e melhoradas as novas APIs.

Comandos básicos em Python

Se você já programa em outras linguagens, talvez possa levar algum tempo até se acostumar com a sintaxe do Python. Por exemplo, não se utiliza o “;” (ponto e vírgula) ao final de cada instrução. Nesse caso, a finalização da instrução é interpretada pelo término da linha. Cada instrução, uma linha, fique atento para este detalhe!. Nessa linguagem também não se utiliza a estrutura de chaves “{ }”, os laços são definidos pela indentação, dada através da tecla “Tab“. Veja no exemplo um código sem identação.

se chover: 
pegue(guarda_chuva) 
se sol: 
pegue(óculos_escuros) 
senão: 
pegue(nada)

Nesse exemplo, meramente ilustrativo pois não está em Python, todas as linhas de código começam no mesmo ponto. Abaixo vemos uma situação diferente:

se chover:
   pegue(guarda_chuva)
se sol:
   pegue(óculos_escuros)
senão:
   pegue(nada)

Veja que existe um espaço (Tab) no começo das linhas 2, 4 e 6. Isso que chamamos de identação. Mais do que deixar apenas legível, o código simplesmente não funciona se não estiver devidamente indentado. Se você precisa saber mais sobre indentação, clique aqui.

Outro fato interessante de salientar é a forma que são feitos os comentários, que ajudam bastante quem vai ler o seu código. Em Python, quando colocamos um jogo da velha “#” (também conhecido como cerquilha ou hashtag) tudo o que estiver à direita é comentário, não fará diferença no funcionamento do programa. Aqui também é válida a regra da instrução por linha. É necessário adicionar um “#” para cada linha de comentário. Como por exemplo:

# Isto e um comentario 
isso e codigo

Um ponto importante de se conhecer em uma linguagem de programação é como funcionam as variáveis. Para o Python, basta colocar “nome_da_variável = valor”. Existem vários tipos de variáveis, elas podem ser um valor numérico inteiro (int), um número decimal (float), um bit (bool), uma frase com palavras (float), entre outros. O tipo da variável será definido automaticamente e podemos ver com a função “type()”. Essa verificação ajuda a resolver diversos problemas no código.

inteiro = 1 # Isto e um inteiro
type(inteiro)
decimal = 3.4 # Isto e um decimal
type(decimal) 
frase = “adoro Python!” # Isto e uma frase
type(frase)
bit = True # Isto e um bit
type(bit)

A melhor forma de aprender os comandos é praticando. Conforme você precise executar outras tarefas, você busca o comando e adiciona ele ao seu “vocabulário” da linguagem. Aqui separamos alguns dos principais comandos e laços em Python:

print: Forma básica de mostrar texto na tela. Pode ser usado com variáveis também.

print("Estou aprendendo a usar Python na Raspberry Pi")
dinheiro =  20 
print("Eu tenho", dinheiro, "reais")

if: Ação condicional. Se a expressão for verdadeira, fará algo, senão fará outra coisa. Caso não haja a estrutura “else” e a condição não for satisfeita não fará nada.

if dinheiro < 30:
    print('Estamos pobres...') # Se o dinheiro for menor que 30
else:
    print("Estamos ricos!") # Se não for

while: Laço de repetição, faz uma mesma sequência de códigos repetidas vezes. Enquanto uma determinada condição não for satisfeita ele continua repetindo os comandos.

# O seguinte programa apresenta os numeros de 1 a 10
contador = 1
while(contador <= 10): # Enquanto o valor do contador é menor que 10
    print(contador) #apresenta o valor do contador
    contador = contador + 1 #soma 1 no valor do contador

input: Recebe um valor do usuário, paralisa o programa e aguarda o usuário digitar algo.

numero = input("Digite um número aqui ") # Aguarda a entrada do usuario
print(numero) # Apresenta na tela o valor digitado

Executando comandos

Os comandos em Python podem ser executados em um terminal próprio ou através de  um arquivo Python (.py) com os comandos já salvos. Quando utiliza-se o terminal, é possível verificar e acompanhar as saídas diretamente na tela, sendo ideal na execução de testes rápidos ou na verificação do funcionamento de comandos específicos. Entretanto, este não é um ambiente ideal para se programar códigos mais complexos, pois a estrutura facilmente se mostra confusa.

A forma mais comum e indicada de se programar em Python é escrevendo o código em um arquivo, um comando por linha, e salvando ele em um arquivo Python (.py). Para verificar o resultado do código, é necessário executar o arquivo completo. Na execução, o programa vai rodar um comando por vez na sequência que foi colocada no arquivo.

Chegou a hora de aplicar os comandos em Python na Raspberry Pi! Para abrir o terminal Python Shell você deve selecionar Menu > Desenvolvimento  > Thonny Python IDE. Primeiramente, vamos experimentar a execução do comandos diretamente no terminal: digite algum comando básico, como “1+1” ou “1 < 2” e aperte enter. Veja as respostas saindo diretamente no terminal.

Executando comandos Python

Mas e se quisermos construir códigos mais complexos? Esta forma não seria uma boa opção, pois a cada vez que pressionamos enter o comando é executado. Por isso, a melhor opção é criar um arquivo contendo os comandos. 

Na área de arquivos, escreva um código que apresenta algo na tela, como: 

print("Estou vivo!")

Após isso, clicando em Save, salve o arquivo com o nome “primeiroprograma”. Ao fazer isso, o nome na janela irá mudar e aparecerá o caminho do arquivo “/home/pi/primeiroprograma.py”. 

Executando comandos Python

Executando o programa

Uma vez salvo, o programa já está pronto para ser executado. Basta ir em Run e o resultado do programa aparecerá no terminal. Simples assim, você já está executando o seu programa em Python.

Executando programas Python

Com certeza a melhor forma de rodar o programa é executar o mesmo diretamente no terminal do Linux, assim não precisamos entrar no ambiente de desenvolvimento Python toda vez que quisermos executá-lo. Com o intuito de fazermos isso, devemos abrir o LXTerminal. Precisamos utilizar o comando “python3” para executar um arquivo “.py”. Para isso, basta colocar o seguinte comando no terminal:

python3 primeiroprograma.py

O programa será executado e a mensagem que colocamos aparecerá na tela.

Executando programas Python

Dica: Quando não estamos na mesma pasta que o programa, podemos navegar pelas pastas com o comando  “cd” até chegar nela. Se o programa for salvo em uma pasta diferente da que estamos, devemos mostrar o caminho da mesma, como por exemplo:

python3 home/pi/primeiroprograma.py

Agora que você já entendeu como executar programas em Python, você está pronto para seguir para a próxima aula.