Implemente uma função que recupere o inventário de um arquivo texto (inventario.txt).

Passo 1

Beleza, vamos lá! O enunciado pede para criar uma função que recupere o inventário de um arquivo de texto chamado “inventario.txt”. Isso está relacionado com a manipulação de arquivos em programação. Vamos precisar saber como abrir, ler e processar arquivos para resolver isso.

Passo 2

Primeiro, vamos abrir o arquivo “inventario.txt” para leitura. Em Python, usamos a função open() para isso. Precisamos especificar o modo de abertura como leitura com 'r'.
arquivo = open('inventario.txt', 'r')

Passo 3

Depois de abrir o arquivo, vamos ler o conteúdo inteiro dele usando o método read(). Isso vai nos dar todo o texto dentro do arquivo.
conteudo = arquivo.read()

Passo 4

Agora que temos o conteúdo do arquivo, vamos precisar processá-lo. Geralmente, um inventário tem itens separados por linhas, então vamos dividir o texto em linhas usando o método splitlines().
linhas = conteudo.splitlines()

Passo 5

Cada linha provavelmente contém informações sobre um item, como nome e quantidade, separados por algum delimitador, como uma vírgula. Vamos percorrer cada linha e separar esses elementos usando o método split(',').
inventario = {}
for linha in linhas:
    partes = linha.split(',')
    nome = partes[0].strip()
    quantidade = int(partes[1].strip())
    inventario[nome] = quantidade

Passo 6

Depois de processar todas as linhas, não podemos esquecer de fechar o arquivo para liberar recursos.
arquivo.close()

Resposta

Aqui está a função completa que recupera o inventário do arquivo “inventario.txt”:
def recuperar_inventario():
    # Abre o arquivo para leitura
    arquivo = open('inventario.txt', 'r')
    
    # Lê todo o conteúdo do arquivo
    conteudo = arquivo.read()
    
    # Divide o conteúdo em linhas
    linhas = conteudo.splitlines()
    
    # Inicializa um dicionário para armazenar o inventário
    inventario = {}
    
    # Processa cada linha para extrair nome e quantidade
    for linha in linhas:
        partes = linha.split(',')
        nome = partes[0].strip()
        quantidade = int(partes[1].strip())
        inventario[nome] = quantidade
    
    # Fecha o arquivo
    arquivo.close()
    
    return inventario

# Exemplo de uso
inventario = recuperar_inventario()
print(inventario)
Essa função abre o arquivo “inventario.txt”, lê e processa cada linha para criar um dicionário onde as chaves são os nomes dos itens e os valores são as quantidades correspondentes. No final, ela retorna esse dicionário contendo todo o inventário.

Exercícios relacionados