Por que eu devo ler este artigo:Python é fácil de aprender e cheio de recursos. Para quem vem de outras linguagens baseadas em C, tais como o Java ou C#, alguns elementos do Python podem ser novidade. Aqui não há abertura e fechamento de chaves, é opcional o ponto e vírgula no final das expressões e a indentação é quem delimita os escopos como parte integrante da sintaxe. Este artigo tem por objetivo iluminar esses pontos para que a sua entrada no Python seja tranquila.

A sintaxe de uma linguagem são as regras que nos dizem como escrever um código para que ele seja compilado sem erros. A seguir, veremos algumas dentre as principais características da sintaxe do Python, com exemplos de código e explicações. Uma vez que o Python é uma linguagem fácil de aprender, é possível que ao final desse artigo você já possa escrever os seus primeiros códigos com a mesma.

Aprenda como preparar o seu computador para programar em Python

Variável

Nas linguagens de programação, a variável é um local na memória que reservamos para armazenar dados. Para criar uma variável no Python basta informar nome e valor, como mostra o Código 1.

total_alunos = 10
print(total_alunos)
Código 1. Declaração de uma variável

Neste código declaramos a variável total_alunos na Linha 1 e exibimos o seu valor na Linha 2 com o comando print.

O nome de uma variável deve começar com uma letra ou sublinhado e pode ser seguido por letras, números e o caractere de sublinhado _. No Código 1 temos um exemplo de variável que recebeu um nome composto por duas palavras separadas por um sublinhado. Outras formas de se escrever variáveis são erradas ou incomuns.

Vamos ver no Código 2 um exemplo de código inválido na linguagem Python.

total_alunos = 10
_total_alunos = 10
1total_alunos = 10

print(total_alunos)
print(_total_alunos)
print(1total_alunos)
Código 2. Nomes de variáveis válidos e inválidos

Na Linha 3, temos uma variável que se inicia com um número, o que gera um erro de sintaxe. A Linha 7 também contém um erro, pois está tentando exibir uma variável que tem um nome incorreto.

Python é uma linguagem case-sensitive, que faz diferenciação entre letras maiúsculas e minúsculas. Sendo assim, total_alunos e Total_alunos seriam nomes de variáveis diferentes. Vejamos um exemplo no Código 3.

total_aulas = 5
TOTAL_AULAS = 10

print(total_aulas)
print(TOTAL_AULAS)
Código 3. Nomes de variáveis diferenciados por letras maiúsculas e minúsculas

Nesse exemplo, total_aulas é uma variável diferente de TOTAL_AULAS.

Palavras-chave

Python, como toda linguagem, possui um conjunto de palavras-chave, que são termos que possuem significado especial para o compilador e que não podem utilizados como nomes. Abaixo temos uma lista destes termos:

and, as, assert, break, class, continue, def, del, elif, else, except, False, finally,
for, from, global, if, import, in, is, lambda, None, nonlocal, not, or, pass, raise, 
return, True, try, while, with, yield

O Código 4 gera um erro de sintaxe, pois o nome da variável for está violando a regra de não usar palavras-chave.

for = 5 - 1
print(x)
Código 4. Nome de variável inválido porque é uma palavra-chave

Para resolver esse problema basta utilizar um nome que não seja uma palavra-reservada, como vemos no Código 5.

x = 5 - 1
print(x)
Código 5. Correção do código errado

Não se preocupe em decorar cada palavra-chave da linguagem agora. A maioria das IDEs com as quais você vai trabalhar te avisará quando você estiver utilizando alguma dessas palavras como nome de uma variável.

Não é necessário usar ponto vírgula no fim de um comando

Em boa parte das linguagens de programação as linhas de código devem terminar com um ponto e vírgula (;). No Python isso é opcional. Um caso onde o ponto e vírgula seria necessário é quando temos mais de um comando em uma mesma linha. O Código 6 mostra como é isso na prática.

a = 1
b = 2
c = 3
print("o valor de a é ", a)
print("o valor de b é ", b); print("o valor de c é ", c)
Código 6. Mais de um comando em uma mesma linha separados por ponto e vírgula

Na Linha 5, usamos dois comandos numa mesma linha, e para isso utilizamos o ponto e vírgula. Acima podemos ver que no final do comando print("o valor de b é ", b) adicionamos um ponto e vírgula e no final do comando print("o valor de c é ", c) isso não foi necessário.

Indentação faz parte da sintaxe

Indentação é uma forma de arrumar o código, fazendo com que algumas linhas fiquem mais à direita que outras, à medida que adicionamos espaços em seu início. Para a maioria das linguagens a indentação não é obrigatória, mas no caso Python isso é diferente.

A indentação é uma característica importante no Python, pois além de promover a legibilidade é essencial para o bom funcionamento do código. Em outras palavras, se a indentação não estiver adequada o programa pode se comportar de forma inesperada ou até mesmo não compilar.

Por exemplo, no caso de um if, o que determina se um código está dentro da condicional é o fato dele ter sido indentado. O Código 7 apresenta um exemplo onde o comando print só será executado se o valor da variável x for maior que 8.

x = 10

if x > 8:
   print("x é maior que 8")
Código 7. Comando print dentro de um if

Agora veja esse novo exemplo no qual o comando print será executado de qualquer forma por não estar indentado e, por isso, não estar contido no if.

x = 10

if x > 8:

print("x é maior que 8")
Código 8. Comando print fora de um if

No Código 8 temos dois erros. O primeiro tem a ver com a forma como o código foi escrito, porque se se espera que o comando print seja executado apenas se x for maior que 8, ele deveria estar indentado.

Um outro erro está relacionado a estrutura de controle de fluxo if, que será vista em detalhes em um outro momento. Uma vez que o comando print não está indentado, o mesmo também não está contido no if, deixando-o vazio e isso vai causar um erro de sintaxe.

Parênteses são opcionais

Vale ressaltar que no Python não há a necessidade de fazer o uso de parêntesis para as estruturas de controle de fluxo como if, for e while. No PyCharm, isso será apontando como redundância, como podemos ver na Figura 1.

PyCharm alertando sobre o uso desnecessário de parênteses
Figura 1. PyCharm alertando sobre o uso desnecessário de parênteses

Nos Códigos 9 e 10 temos dois exemplos que mostram a diferença entre usar ou não os parênteses, mostrando que eles são opcionais.

x = 10
if (x > 8):
  print("x é maior que 8")
Código 9. Estrutura de controle de fluxo com parênteses
x = 10
if x > 8: # nessa linha removemos os parêntesis
  print("x é maior que 8")
Código 10. Estrutura de controle de fluxo sem parênteses

Ambos os códigos estão corretos. Dessa forma, o Python se diferencia da maior parte das linguagens, nas quais a sintaxe exige que os parêntesis sejam usados.

Conclusão

Conhecer a sintaxe do Python é muito importante para escrever programas que funcionem corretamente. Uma vez que essa é uma linguagem diferente das demais em muitos aspectos, muitos dos conceitos apresentados aqui podem não ser óbvios e representam armadilhas para os iniciantes. Com esse artigo em mãos, principalmente se você vem de uma linguagem baseada em C, o aprendizado do Python poderá ser mais agradável e ágil.

Confira também