Sobes.tech
Junior

Forneça exemplos de uso da função zip em Python.

sobes.tech IA

Resposta da IA

A função zip() combina os elementos de vários objetos iteráveis em tuplas. A iteração termina quando o objeto iterável mais curto é esgotado.

Exemplos:

  • Combinação de duas listas:

    # Combinar índices e valores
    indices = [0, 1, 2]
    values = ['a', 'b', 'c']
    zipped_list = list(zip(indices, values))
    # zipped_list será [(0, 'a'), (1, 'b'), (2, 'c')]
    
  • Combinação de três objetos iteráveis:

    # Combinar listas e uma string
    numbers = [1, 2, 3]
    letters = ['x', 'y', 'z']
    symbols = "!@#"
    zipped_multiple = list(zip(numbers, letters, symbols))
    # zipped_multiple será [(1, 'x', '!'), (2, 'y', '@'), (3, 'z', '#')]
    
  • Uso de zip() em loops:

    # Iterar sobre zipped_list
    names = ['Alice', 'Bob', 'Charlie']
    ages = [30, 25, 35]
    for name, age in zip(names, ages):
        print(f"{name} tem {age} anos.")
    
  • Desempacotamento de um objeto comprimido com *:

    # Lista comprimida
    zipped_data = [(0, 'a'), (1, 'b'), (2, 'c')]
    # Desempacotar em duas listas separadas
    indices, values = zip(*zipped_data)
    # indices será (0, 1, 2) (tupla)
    # values será ('a', 'b', 'c') (tupla)
    
  • Uso de zip para criar um dicionário:

    # Criar um dicionário a partir de duas listas
    keys = ['maçã', 'banana', 'laranja']
    values = [10, 20, 15]
    fruit_prices = dict(zip(keys, values))
    # fruit_prices será {'maçã': 10, 'banana': 20, 'laranja': 15}
    
  • Trabalhar com objetos iteráveis de comprimentos diferentes:

    # Zip para na menor lista
    short_list = [1, 2]
    long_list = ['a', 'b', 'c', 'd']
    zipped_unequal = list(zip(short_list, long_list))
    # zipped_unequal será [(1, 'a'), (2, 'b')]