Operadores

Operadores

Os operadores em Python são fundamentais para realizar operações em variáveis e valores. Eles permitem que realizemos cálculos matemáticos, operações lógicas, comparações e manipulações de bits. Nesta secção, exploraremos os vários tipos de operadores em Python, acompanhados por exemplos práticos.

Operadores Aritméticos

Os operadores aritméticos são utilizados para realizar operações matemáticas:

num1 = 10
num2 = 3

# Adição
resultado_adicao = num1 + num2
print("Adição: ", resultado_adicao)

# Subtração
resultado_subtracao = num1 - num2
print("Subtração: ", resultado_subtracao)

# Multiplicação
resultado_multiplicacao = num1 * num2
print("Multiplicação: ", resultado_multiplicacao)

# Divisão
resultado_divisao = num1 / num2
print("Divisão: ", resultado_divisao)

# Divisão inteira
resultado_divisao_inteira = num1 // num2
print("Divisão Inteira: ", resultado_divisao_inteira)

# Resto da divisão (módulo)
resultado_modulo = num1 % num2
print("Resto da Divisão (Módulo): ", resultado_modulo)

# Exponenciação
resultado_exponenciacao = num1 ** num2
print("Exponenciação: ", resultado_exponenciacao)

Operadores de Atribuição

Os operadores de atribuição são usados para atribuir valores a variáveis:

num = 5

# Atribuição simples
num = 5
print("Atribuição simples: ", num)

# Atribuição com adição
num += 3  # Equivalente a num = num + 3
print("Atribuição com adição: ", num)

# Atribuição com subtração
num -= 2  # Equivalente a num = num - 2
print("Atribuição com subtração: ", num)

# Atribuição com multiplicação
num *= 4  # Equivalente a num = num * 4
print("Atribuição com multiplicação: ", num)

# Atribuição com divisão
num /= 2  # Equivalente a num = num / 2
print("Atribuição com divisão: ", num)

Operadores de Comparação

Os operadores de comparação são utilizados para comparar dois valores, retornando um valor booleano (True ou False):

num1 = 10
num2 = 20

# Igualdade
print(num1 == num2)  # False

# Desigualdade
print(num1 != num2)  # True

# Maior que
print(num1 > num2)  # False

# Menor que
print(num1 < num2)  # True

# Maior ou igual a
print(num1 >= num2)  # False

# Menor ou igual a
print(num1 <= num2)  # True

Operadores Lógicos

Os operadores lógicos são utilizados para combinar expressões booleanas:

verdadeiro = True
falso = False

# Operador lógico 'e'
print(verdadeiro and falso)  # False

# Operador lógico 'ou'
print(verdadeiro or falso)  # True

# Operador lógico 'não'
print(not verdadeiro)  # False

Operadores de Identidade

Os operadores de identidade são utilizados para comparar se duas variáveis apontam para o mesmo objeto na memória:

a = [1, 2, 3]
b = a
c = list(a)

# 'é' (is)
print(a is b)  # True
print(a is c)  # False

# 'não é' (is not)
print(a is not b)  # False
print(a is not c)  # True

Operadores de Associação

Os operadores de associação são utilizados para verificar se uma sequência contém um determinado valor:

frutas = ["maçã", "banana", "cereja"]

# 'em' (in)
print("banana" in frutas)  # True
print("laranja" in frutas)  # False

# 'não em' (not in)
print("banana" not in frutas)  # False
print("laranja" not in frutas)  # True

Operadores Bit a Bit

Os operadores bit a bit são utilizados para operações ao nível dos bits:

num1 = 10  # 1010 em binário
num2 = 4   # 0100 em binário

# E bit a bit
print(num1 & num2)  # 0 (0000 em binário)

# Ou bit a bit
print(num1 | num2)  # 14 (1110 em binário)

# Ou exclusivo bit a bit (XOR)
print(num1 ^ num2)  # 14 (1110 em binário)

# Negação bit a bit
print(~num1)  # -11 em decimal (Nota: resultado depende do tamanho dos bits)

# Deslocação para a esquerda
print(num1 << 1)  # 20 (10100 em binário)

# Deslocação para a direita
print(num1 >> 1)  # 5 (0101 em binário)

Resumo

Neste capítulo, explorámos os diferentes tipos de operadores em Python. Vimos exemplos práticos de operadores aritméticos, de atribuição, de comparação, lógicos, de identidade, de associação e bit a bit. A compreensão destes operadores é essencial para manipular dados e realizar operações lógicas em Python.

Quiz

  1. O que faz o operador ** em Python?

    • A) Adição
    • B) Divisão
    • C) Exponenciação
    • D) Módulo
  2. Qual é o resultado de 10 // 3 em Python?

    • A) 3.333
    • B) 3
    • C) 1
    • D) 10
  3. Qual dos seguintes operadores retorna True se ambos os operandos forem verdadeiros?

    • A) or
    • B) and
    • C) not
    • D) is
  4. O que faz o operador in em Python?

    • A) Verifica se o valor está numa sequência
    • B) Compara dois valores
    • C) Adiciona dois valores
    • D) Realiza deslocação de bits
  5. O que faz o operador bit a bit ~ em Python?

    • A) AND bit a bit
    • B) OR bit a bit
    • C) XOR bit a bit
    • D) Negação bit a bit
<< Operadores Índice Operadores >>