FC ConcursosFC Concursos

Questão FC890555

Considere o seguinte trecho de código Python. conteudo = """processo;juiz;resultado 0001234-56.2023.8.26.0100;João Silva;Procedente 0009876-44.2022.8.19.0001;Maria Souza;Improceden

Linguagens de Programação para Ciência de Dados

FGV · 2026

Considere o seguinte trecho de código Python.

 

conteudo = """processo;juiz;resultado   0001234-56.2023.8.26.0100;João Silva;Procedente   0009876-44.2022.8.19.0001;Maria Souza;Improcedente   0011223-77.2023.8.13.0005;João Silva;Parcialmente

Procedente""" with open("sentencas.csv", "w", encoding="utf-8",

newline="") as arquivo: arquivo.write(conteudo)

 

Para gerar o arquivo sentencas_joao_silva.csv contendo apenas as linhas cujo juiz é “João Silva”, preservando o cabeçalho, deve-se utilizar o código:

  1. with open("sentencas.csv") as f,

    open("sentencas_joao_silva.csv","w") as out:         for linha in f:              if "João Silva" in linha:                 out.write(linha)

  2. with open("sentencas.csv","r",encoding="utf-8") as

    inp,

    open("sentencas_joao_silva.csv","a",encoding="utf-8")

    as out:      out.write(inp.readline())      for linha in inp:           campos = linha.strip().split(";")           if campos[1] == "João Silva": out.write(linha)

  3. with open("sentencas.csv", "r", encoding="utf-8") as

    inp, open("sentencas_joao_silva.csv", "w",

    encoding="utf-8") as out:         for linha in inp:         linha = linha.strip()         campos = linha.split(";")         if len(campos) >= 2 and campos[1] == "João

    Silva": out.write(";".join(campos) + "\n")

  4. linhas = open("sentencas.csv").read().split("\n") with open("sentencas_joao_silva.csv","w") as out:       for linha in linhas[1:]:            if linha.split(";")[1] == "João Silva":

    out.write(linha+"\n")

  5. with open("sentencas.csv") as f,

    open("sentencas_joao_silva.csv","x") as out:         for linha in f:                  if "João Silva" == linha: out.write(linha)

Mostrar resposta e comentário

Gabarito

B

Comentário do professor

O código usa o gerenciador de contexto with open para abrir simultaneamente o arquivo de origem (inp) em modo "r" e o de destino (out) em modo "a" com encoding="utf-8", garantindo fechamento automático e preservação de acentos.

A instrução out.write(inp.readline()) lê e grava apenas a primeira linha, portanto o cabeçalho é mantido. A função readline() avança o cursor para a próxima linha, de forma que o laço seguinte processa só os dados.

No laço for linha in inp cada linha é tratada com linha.strip() e split(";") para gerar a lista campos. A condição campos[1] == "João Silva" verifica igualdade exata no campo do juiz.

Quando a condição é verdadeira, out.write(linha) grava a linha original no arquivo de saída, preservando formatação e quebras. O modo "a" cria o arquivo se necessário e evita sobrescrever conteúdo existente.

Conteúdo do catálogo FC Concursos · Atualizado em

Continue aprendendo