Expressões e operadores
Para declararmos expressões em qualquer linguagem de programação precisamos utilizar os operadores. Os conceitos
de expressões e operadores já foram vistos em
Portugol: Expressões e Operadores e
C: Operadores. Em
caso de dúvida é recomendada a leitura.
A linguagem Python utiliza os mesmos operadores básicos da linguagem C/C++, como exceções, para
criarmos expressões dos tipos: aritméticas, lógicas e relacionais e bit-a-bit e outras. Nesta
seção vamos aprender sobre esses operadores.
Objetivos
Para atribuirmos valores à variáveis e constantes Python utiliza a tabela de operadores de
atribuição abaixo:
Tab. 1 : Operadores de atriuição
| Operador |
Descrição |
Exemplo |
| >= |
Atribuição |
a=b |
| += |
Atribuição acumulativa de adição |
a+=b |
| = |
Atribuição acumulativa de subtração |
a-=b |
| *= |
Atribuição acumulativa de multiplicação |
a*=b |
| %= |
Atribuição acumulativa de Módulo |
a%=b |
| /= |
Acumulação de divisão |
a%=b |
| |= |
Acumulação de OU bit-a-bit |
a|=b |
| &= |
Acumulação de E bit-a-bit |
a&=b |
| ^= |
Acumulação de Ou-Exclusivo bit-a-bit |
a^=b |
| <<= |
Acumulação de deslocamento |
a<<=b |
| >>= |
Acumulação de deslocamento |
a>>=b |
| **= |
Acumulação de potência |
a**=b |
Sintaxe
valor1 ou expressão1 operador valor2 ou expressão2
Exemplo 1
a = 1
b = 2
a+=b
print(a)
a-=b
print(a)
a*=b
print(a)
a/=b
print(a)
Saída
3
1
2
1.0
Para realizarmos cálculos matemáticos, a linguagem Python force os operadores aritméticos
abaixo:
Tab. 2 : Operadores aritméticos
| Operador |
Descrição |
Exemplo |
| + |
Adição |
a+b |
| - |
Subtração |
a-b |
| * |
Multiplicação |
a*b |
| / |
Divisão |
a/b |
| // |
Divisão float |
a/b |
| % |
Módulo |
a%b |
Sintaxe
valor1 ou expressão1 operador valor2 ou expressão2
Exemplo 2
a=10
b=5
x = a + b
print(x)
x=a-b
print(x)
x=a*b
print(x)
x=a/b
print(x)
x=a % b
print(x)
x=a**b
print(x)
x=a//b
print(x)
Saída
15
5
50
2.0
0
100000
2
Python não possui operadores unários de incremento(++) e decremento(--), sendo
necessário utilizar a expressão, por exemplo, variavel = variavel + 1.
Para declarar expressões de comparação, Python fornece os operadores relacionais
abaixo. Esses retornam True ou False:
Tab. 3 : Operadores relacionais
| Operador |
Descrição |
Exemplo |
| == |
Igual |
a == b |
| >= |
Maior ou igual |
a >= b |
| <= |
Menor ou igual |
a <= b |
| != |
Diferente |
a != b |
| > |
Maior |
a>b |
| < |
Menor |
a<b |
Sintaxe
valor1 ou expressão1 operador valor2 ou expressão2
Exemplo 3
a=10
b=5
x = a==b
print(x)
x= a>b
print(x)
x= a<b
print(x)
x= a>=b
print(x)
x= a<=b
print(x)
x= a!=b
print(x)
Saída
False
True
False
True
False
True
Os operadores relacionais são muito utilizado para tomadas de decisão. Comandos de
decisão podem ser vistos em Python: Comandos.
Para entendermos sobre a aplicação dos operadores lógicos é importante entender sobre a
tabela verdade que foi vista em
Portugol: Operadores Lógicos
e C: Operadores Lógicos.
Para criar expressões lógicas, Python fornece os operadores relacionais abaixo que retornam True
ou False caso contrário.
Tab. 4 : Operadores lógicos
| Operador |
Significado |
Exemplo |
| and |
E lógico |
a and b |
| not |
NÃO lógico |
not a |
| or |
OU lógico |
a or b |
Sintaxe
valor1 ou expressão1 operador valor2 ou expressão2
Exemplo 4
a=True
b=False
x = a and b
print(x)
x= a or b
print(x)
x = not a
print(x)
Saída
False
True
False
Os operadores lógicos são muito utilizado para tomadas de decisão. Comandos de decisão
podem ser vistos em Python: Comandos.
Operadores bit-a-bit/bitwise
O uso dos operadores bit-a-bit foram estudado em
Tutorial C: Operadores bit-a-bit .
É importante entender sobre a tabela verdade explicado em
Portugol: Operadores Lógicos e
C: Operadores Lógicos.
Os operadores bit-a-bit/bitwise são operadores utilizados para trabalhar com manipulação
dos bits de uma variável ou expressão e retornam retornam 0 ou 1. Abaixo os operadores disponíveis
na linguagem Python:
Tab. 5 : Operadores bitwise
| Operador |
Descrição |
Exemplo |
| & |
E bit-a-bit |
a & b |
| | |
OR bit-a-bit |
a | b |
| ^ |
Ou Exclusivo |
a<<b |
| ~ |
Não bit-a-bit |
~a |
| >> |
Desloca N bits à direita |
a>>b |
| << |
Desloca N bits à esquerda |
a<<b |
Sintaxe
valor1, variavel1 ou expressao1 operador valor2, variavel2 ou expressao2
valor, variavel ou expressão << qtd_bits
valor, variavel ou expressão >> qtd_bits
~valor, variavel ou expressão
Sintaxe
qtd_bits: quantidade de bits de deslocamento
Exemplo 5
a=1
b=2
x = a&b
print(x)
x= a|b
print(x)
x = ~b
print(x)
Saída
0
3
-2
2
1
0
Operadores de identitidade
Os operadores de identidade são utilizados para criar expressões quando precisamos saber "se são" ou "não são alguma coisa".
Esses operadores retornam True em caso verdadeiro ou False caso contrário.
Tab. 6 : Operadores de identidade
| Operador |
Descrição |
Exemplo |
| is |
Retorna True se as variáveis são o mesmo objeto |
a is b |
| is not |
Retorna True se as variáveis não são o mesmo objeto |
a is not b |
Sintaxe
objeto1 operador objeto2
Exemplo 6
a = [1,2]
b = [1,2]
c = a
print(a is c)
print(a is not b)
print(a == b)
Saída
True
True
True
Os operadores de associação quando precisamos criar expressões para saber se algum valor está contido ou não
está contido dentro de algo. Esses operadores retornam True em caso verdadeiro ou False caso contrário.
Tab. 7 : Operadores de associação
| Operador |
Descrição |
Exemplo |
| in |
Retorna True se um elemento está contido |
a in b |
| not in |
Retorna True se um elemento não está contido |
a not in b |
Sintaxe
valor ou variavel operador lista, array ou semelhante
Exemplo 7
a = [1,2,3]
b = 1
print(1 in a)
print(4 in a)
Saída
True
False
Precedência de operadores
A precedência da avaliação dos operadores em Python segue a listagem abaixo.
Tab. 8 : Precedência de operadores
| Descrição |
Operador |
| Parênteses |
() |
| Potência |
** |
| Unário |
+,-,~ |
| Multiplicação/Divisão |
*,@, //, /, % |
| Adição/Subtração |
+, - |
| Deslocamento(bitwise) |
>> , << |
| E(bitwise) |
& |
| OU(bitwise) |
| |
| OU Exclusivo(bitwise) |
^ |
| Comparação |
==, !=, >, <, <=, >=, is, is not, not, in, not in |
| Não(lógico) |
not |
| E(lógico) |
and |
| Ou |
or |
| Atribuição |
=, +=, -=, *=, /=, %=, //=, **=, &=, |=, ^=, >>=, <<= |
Histórico de atualizações
- 05/11/2025 - revisão 3 - Adição: 'precedência de operadores'
- 10/09/2025 - revisão 2 - Ajustes: pontuais, sintaxes, css de tabs., target de links internos e objetivos
- 18/09/2024 - revisão 1 - Correção em link formatação; ajustes gramaticais; outros ajustes
- 13/02/2024 - versão inicial
Os cursos oferecidos nesta página são cursos fornecidos por parceiros. Ao comprar um curso clicando
em seu banner, você está ajudando a manter o projeto TutorialDev vivo. Os sites dos cursos parceiros utilizam cookies.