MicroPython: Revisão da Linguagem Python – Parte 2

Este post faz parte da série Raspberry Pi Pico com MicroPython

Introdução

À medida que a complexidade dos programas aumenta, é necessário ter o conhecimento de como controlar o fluxo do programa usando estruturas de decisão e laços de repetição. Essas construções fornecem ferramentas poderosas para lidar com diferentes cenários e automatizar tarefas repetitivas.

Além disso, uma outra ferramenta importante na programação são as funções. Afinal, elas permitem que você modularize seu código, dividindo-o em partes menores e mais fáceis de gerenciar.

Neste artigo, iremos explorar o uso das estruturas de decisão em Python: if, else e elif, assim como os laços de repetição while e for

Estruturas de decisão

Uma estrutura de decisão permite que o fluxo do programa seja alterado com base na avaliação de uma condição que pode ser verdadeira ou falsa.

if

O if é uma estrutura de condição que avalia uma expressão e, se a condição dada for verdadeira, executa uma ação especificada em seu bloco de instruções.

Sintaxe

if expressão:
    comando
    comando

É importante que a sintaxe e indentação sejam respeitadas ou o programa não funcionará como esperado.

Exemplo

a=7
contador=0
if a<10:
    print(“o número eh menor que 10”)
    contador+=1

Nesse primeiro exemplo, se a variável a for menor que 10 uma mensagem será exibida e o contador será incrementado.

a=7
contador=0
if a<10:
    print(“o número eh menor que 10”)
contador+=1

Já no segundo exemplo, se a variável a for menor que 10 uma mensagem será exibida e independente do if o contador será incrementado. Esse detalhe pode gerar um grande problema no programa, então é importante se atentar à indentação.

else 

O if executa uma ação se uma determinada condição for verdadeira. Por outro lado, o else é uma alternativa para lidar com o caso em que a condição do if é falsa.

Sintaxe

else:
    comando
    comando

É importante ressaltar que não existe else sem if.

Exemplo

a=7
if a<10:
    print(“o número eh menor que 10”)
else:
    print(“o número eh maior que 9”)

elif

Se for preciso testar mais de uma condição, utiliza-se o elif entre o if e o else.

Sintaxe

elif expressão:
comando
comando
É importante ressaltar que não existe elif sem if.

Exemplo

a=15
if a<10:
    print(“o número eh menor que 10”)
elif a<20:
    print(“o número estah entre 10 e 19”)
else:
    print(“o número eh maior que 19”)

Laços de repetição

Os laços de repetição são utilizados para executar um bloco de código repetidamente, permitindo automatizar tarefas que precisam ser realizadas diversas vezes. No entanto, é importante tomar cuidado ao utilizar loops para evitar loops infinitos e garantir que as condições sejam definidas corretamente, a fim de evitar comportamentos inesperados no programa.

Dentro do bloco de código de um loop, é possível utilizar outras estruturas de controle, como if e else, para controlar o fluxo do loop e tomar decisões específicas com base em condições.

Existem dois principais laços de repetição em Python: o while e o for.

while

O while é utilizado quando queremos repetir um bloco de código enquanto uma condição específica for verdadeira, quando o resultado da condição passa a ser falso o loop é interrompido.

Sintaxe

while condição:
    comando
    comando

A estrutura do while consiste em avaliar a condição no início do loop. Se a condição for verdadeira, o bloco de código será executado. Em seguida, o próximo reinicia, a condição é avaliada novamente e o processo continua até que a condição seja falsa. É importante garantir que a condição eventualmente se torne falsa para evitar loops infinitos e suas consequências no programa.

Exemplo

a=0
while a<10:
    print(“a=”, a)

Do jeito que o código está escrito o programa ficará em um loop eterno, pois não há nada que faça a condição do while se tornar falsa. Por isso, ao montar uma estrutura while você sempre deve pensar na condição de início do loop e na condição de parada.

a=0
while a<10:
    print(“a=”, a)
    a+=1

Já neste código, a cada vez que o conteúdo do while é lido o a é incrementado até atingir o valor 10 e interromper a execução do loop.

for

O for é utilizado quando queremos iterar sobre uma sequência de elementos, como uma lista, uma string ou um intervalo numérico. O for é especialmente útil quando já sabemos quantas vezes o loop precisa ser executado. Ele percorre cada elemento da sequência e executa o bloco de código correspondente para cada elemento.

Sintaxe

for variável in sequencia:
    comando
    comando

No for já é definido o início e a parada do loop diminuindo as chances de se ter loop infinito.

Exemplo

for a in range(10):
    print(a)

O programa irá imprimir de 0 a 9 incrementando de um em um.

for a in range(5, 10):
    print(a)

O programa irá imprimir de 5 a 9 incrementando de um em um.

for a in range(0, 10, 2):
    print(a)

O programa irá imprimir de 0 a 9 incrementando de dois em dois.

Funções

As funções são blocos de código reutilizáveis que realizam uma tarefa específica. Elas ajudam a tornar o código mais organizado, permitindo a reutilização de trechos de lógica.

Sintaxe

def nome_da_funcao(parâmetros):
    comandos
    comandos
    return valor_de_retorno

A declaração da função tem os seguinte itens:

  •  A palavra-chave “def” é utilizada para definir a função. 
  • “nome_da_funcao” é o nome escolhido para a função, que deve seguir as convenções de nomenclatura em Python e ser descritivo e intuitivo. Então recomenda-se escolher um nome que represente claramente a tarefa ou ação que a função realiza.
  • “parâmetros” são os valores de entrada que podem ser passados para a função. Eles são opcionais e você pode definir quantos forem necessários e separá-los por vírgula.
  • A estrutura “comandos” está no bloco de código, que é onde a lógica da função é implementada. Aqui você pode realizar operações, manipular dados e executar outras ações.
  • A palavra-chave “return” é usada para retornar um valor opcional da função. Isso permite que você obtenha um resultado específico quando chama a função. Mas nem toda função precisa ter retorno.

Exemplo

def testa_maior (x,y)
    if x>y:
        print (x)
    else:
        print (y)

Uma vez definida, a função pode ser chamada em qualquer parte do programa, fornecendo os argumentos necessários. Assim a função poderia ser chamada tanto com um valor como com variáveis:

Exemplo 1:

testa_maior(15, 5)

Exemplo 2:

a=20
b=23
testa_maior(a, b)

Note que nesse primeiro exemplo fizemos a função sem retorno, agora façamos a mesma função mas com retorno.

def testa_maior (x,y)
    if x>y:
        return x
    else:
    return y

E a chamada da função poderia ser feita da seguinte forma:

Exemplo 3:

c= testa_maior(15, 5)
print (c)

Exemplo 4:

a=20
b=23
c= testa_maior(a, b)

A linha chamando a função print foi utilizada para exibir o valor de retorno da função testa_maior.

Saiba Mais

Video aulas: Programação da Raspberry Pi Pico com MicroPython

Raspberry Pi Pico com MicroPython

MicroPython: Programando com a IDE Thonny GPIO | Entendendo as Saídas Digitais da Raspberry Pi Pico
Licença Creative Commons Esta obra está licenciada com uma Licença Creative Commons Atribuição-CompartilhaIgual 4.0 Internacional.
Comentários:
Notificações
Notificar
2 Comentários
recentes
antigos mais votados
Inline Feedbacks
View all comments
Aryldo
Aryldo
17/07/2023 18:21

Muito interessante. Parabéns.
Me parece que temos um erro nos exemplos do if:
Os dois exemplos ficaram exatamente iguais e assim não dá para entender a explicação de se atentar à indentação.

Fábio Souza
Admin
Reply to  Aryldo
18/07/2023 07:05

Aryldo, obrigado pelo correção.

Home » Software » MicroPython: Revisão da Linguagem Python – Parte 2

EM DESTAQUE

WEBINARS

VEJA TAMBÉM

JUNTE-SE HOJE À COMUNIDADE EMBARCADOS

Talvez você goste: