Python para Desenvolvedores

2ª edição, revisada e ampliada

Capítulo 2: Sintaxe


Um programa feito em Python é constituído de linhas, que podem continuar nas linhas seguintes, pelo uso do caractere de barra invertida (\) ao final da linha ou parênteses, colchetes ou chaves, em expressões que utilizam tais caracteres.

O caractere # marca o inicio de comentário. Qualquer texto depois do # será ignorado até o fim da linha , com exceção dos comentários funcionais.

Comentários funcionais são usados para:

  • alterar a codificação do arquivo fonte do programa acrescentando um comentário com o texto #-*- coding: <encoding> -*#- no inicio do arquivo, no qual <encoding> é a codificação do arquivo (geralmente latin1 ou utf-8). Alterar a codificação é necessário para suportar caracteres que não fazem parte da linguagem inglesa, no código fonte do programa.
  • definir o interpretador que será utilizado para rodar o programa em sistemas UNIX, através de um comentário começando com #! no inicio do arquivo, que indica o caminho para o interpretador (geralmente a linha de comentário será algo como #!/usr/bin/env python).

Exemplo de comentários funcionais:

In [3]:
#!/usr/bin/env python

# Uma linha de código que mostra o resultado de 7 vezes 3
print 7 * 3
21

Exemplos de linhas quebradas:

In [5]:
# Uma linha quebrada por contra-barra
a = 7 * 3 + \
5 / 2

# Uma lista (quebrada por vírgula)
b = ['a', 'b', 'c', 
'd', 'e']

# Uma chamada de função (quebrada por vírgula)
c = range(1,
11)

# imprime todos na tela
print a, b, c
23 ['a', 'b', 'c', 'd', 'e'] [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

O comando print insere espaços entre as expressões que forem recebidas como parâmetro e um caractere de nova linha no final, a não ser que ele receba uma vírgula no fim da lista parâmetros.

Blocos

Em Python, os blocos de código são delimitados pelo uso de endentação, que deve ser constante no bloco de código, porém é considerada uma boa prática manter a consistência no projeto todo e evitar a mistura de tabulações e espaços.

A linha anterior ao bloco sempre termina com dois pontos (:) e representa uma estrutura de controle da linguagem ou uma declaração de uma nova estrutura (uma função, por exemplo).

Estrutura de um programa

Exemplo:

In [1]:
# Para i na lista 234, 654, 378, 798:
for i in [234, 654, 378, 798]:
    # Se o resto dividindo por 3 for igual a zero:
    if i % 3 == 0:
        # Imprime...
        print i, '/ 3 =', i / 3
234 / 3 = 78
654 / 3 = 218
378 / 3 = 126
798 / 3 = 266

O operador % calcula o módulo (resto da divisão).

In [1]:
 
Out[1]: