[ Anterior: Básico ][ Sumário ][ Próxima: Controle de fluxo ]
Aprendendo Python: Operadores e operandos
A maioria das instruções que você escreverá possuirão expressões. Um exemplo de uma expresão é 2 + 3. Uma expressão pode ser dividida em operadores e operandos.
Operadores definem que operação será feita e são representados por símbolos como + ou por palavras-chave. Eles necessitam de alguns dados para funcionar e estes dados são os operandos. Neste exemplo, 2 e 3 são os operandos.
Abaixo você pode ver uma tabela com os diversos operadores do Python:
Operador |
Nome |
Explanação |
Examplos |
---|---|---|---|
+ |
Adição |
Executa a soma de dois valores |
|
- |
Subtração |
Torna um número negativo ou executa subtração de um número menos outro |
|
* |
Multiplicação |
Executa a multiplicação de dois números ou retorna a string repetida tantas vezes |
|
** |
Potência |
Retorna x elevado a y |
|
/ |
Divisão |
Divide x por y |
|
% |
Módulo |
Retorna o resto da divisão |
|
<< |
Deslocamento de bits a esquerda |
Desloca tantos bits a esquerda |
|
>> |
Deslocamento de bits a direita |
Desloca tantos bits a direita |
|
& |
Operador bit a bit AND |
Bits configurados nos dois operadores são configurados no resultado |
|
| |
Operador bit a bit OR |
Bits configurados em um ou outro operador são configurados no resultado |
|
^ |
Operador bit a bit XOR |
Bits configurados em um ou outro operador, mas não em ambos, são configurados no resultado |
|
~ |
Operador bit a bit NOT |
Bits configurado no operador não são configurados no resultado e vice-versa |
|
< |
Menor que |
Retorna se x é menor que y. Toda
comparação retorna 1 para verdadeiro e 0 para
falso. Isto é equivalente as variáveis especiais
|
|
> |
Maior que |
Retorna se x é maior que y |
|
<= |
Menor ou igual a |
Retorna se x é menor ou igual a y |
|
>= |
Maior ou igual a |
Retorna se x é maior ou igual a y |
x = 4; y = 3; x >= 3 retorna |
== |
Igual a |
Compara se os objetos são iguais |
|
!= |
Diferente de |
Compara se os objetos são diferentes |
|
not |
Operador boleano NOT |
Se x é |
|
and |
Operador boleano AND |
|
|
or |
Operador boleano OR |
Se x é |
|
A tabela abaixo mostra a precedência dos operadores em Python, da mais baixa precedência para a mais alta. Isto significa que, em uma expressão, Python avaliará primeiro os operadores mais abaixo desta tabela antes dos operadores mais acima.
Apesar da tabela abaixo, é interessante você habituar-se a usar parênteses para grupar operadores e operandos e organizar suas expressões de modo que seu código fique melhor de entender. Por exemplo, 2 + (3 * 4) é definitivamente mais claro que 2 + 3 * 4. Ao usar os parênteses em expressões evite redundâncias que dificultem o entendimento.
Operador |
Descrição |
---|---|
lambda |
Expressão Lambda |
or |
Operador boleano OR |
and |
Operador boleano AND |
not x |
Operador boleano NOT |
in, not in |
teste de membros |
is, is not |
teste de identidade |
<, <=, >, >=, !=, == |
Comparações |
| |
Operador bit a bit OR |
^ |
Operador bit a bit XOR |
& |
Operador bit a bit AND |
<<, >> |
Deslocamentos de bits |
+, - |
Adição e subtração |
*, /, % |
Multiplicação, Divisão e Resto |
+x, -x |
Positivo, Negativo |
~x |
Operador bit a bit NOT |
** |
Potenciação |
x.attribute |
Referência a um atributo |
x[index] |
Subscrição |
x[index:index] |
Repartição |
f(arguments ...) |
Chamada de função |
(expressions, ...) |
Exibição de tupla |
[expressions, ...] |
Exibição de lista |
{key:datum, ...} |
Exibição de dicionário |
`expressions, ...` |
Conversão de string |
Os operadores desconhecidos serão
abordados em capítulos posteriores.
Operadores com a mesma precedência estão na mesma linha da tabela. Por exemplo, + e – tem a mesma precedência.
Por padrão a tabela acima decide quais operadores são avaliados antes de outros. Porém você pode alterar esta ordem de avaliação através do uso de parênteses. Por exemplo, se você quer que uma adição seja avaliada antes da multiplicação poderia escrever uma expressão assim: (3 + 7) * 9.
Operadores são associados da esquerda para a direita. Isto é operadores com a mesma precedência são avaliados da esquerda para a direita. Por exemplo, 2 + 3 + 5 é avaliada como (2 + 3) + 5. Alguns operadores como o de atribuição, tem associatividade da direita para a esquerda, isto é a = b = c é tratado como a = (b = c).
[ Anterior: Básico ][ Sumário ][ Próxima: Controle de fluxo ]