Informática, perguntado por lucas27484, 6 meses atrás

PYTHON

Escreva uma função chamada palavras_repetidas que recebe o nome do arquivo e uma palavra. A função deve abrir esse arquivo e contar quantas vezes a palavra aparece no arquivo.

Entrada:

Não há entrada de dados, os arquivos existem e a função é chamada automaticamente

Saída:

A função deve imprimir o número de vezes que uma determinada palavra se repete, de acordo com os exemplos abaixo.

Notas:

Caracteres em caixa alta e em caixa baixa são tratados de modo diferente. O caso de teste 3 procura a palavra 'perfeita' no arquivo 'maquiavel.txt'. O documento tem somente a palavra 'perfeitamente' portanto o seu algoritmo deve considerar que encontrou a palavra.

Submeta somente o que foi solicitado.

Teste no anexo>

Anexos:

Soluções para a tarefa

Respondido por GeBEfte
1

Vamos direto ao código e, posteriormente, deixo alguns comentários.

Obs.: O arquivo de texto deve estar na mesma pasta do script ou será necessário digitar o caminho para o arquivo em vez de apenas seu nome.

[Python 3.8]

\sf de f~palavras\underline{~}repetidas(nome\underline{~}arquivo,~palavra\underline{~}pesquisada):\\~~~~cont~=~0\\~~~~with~ope n(nome\underline{~}arquivo,~'r')~as~f:\\~~~~~~~~conteudo~=~f.read().split()\\~~~~~~~~for~palavra~in~conteudo:\\~~~~~~~~~~~~if~palavra\underline{~}pesquisada~in~palavra:\\~~~~~~~~~~~~~~~~cont~+=~1\\~~~~print(f'\{palavra\underline{~}pesquisada\}~aparece~no~arquivo~\{nome\underline{~}arquivo\}~\{cont\}~vez(es).')\\

Comentários:

--> O arquivo "nome_arquivo" é aberto em modo de leitura ('r') com uma estrutura with para garantir que o arquivo seja fechado.  

--> Utilizamos o método read() para capturar todo texto contido no arquivo como uma string e, na mesma linha de código, separamos essa string em palavras convertendo-a em uma lista de strings com o método split().

--> Com um laço for, percorremos a lista de palavras (guardada na variável "conteudo") e, em cada iteração, se a palavra pesquisada pela função for igual ou fizer parte da palavra contida na lista, incrementamos o contador "cont".

--> Finalizamos mostrando ao usuário o resultado na investigação.

\Huge{\begin{array}{c}\Delta \tt{\!\!\!\!\!\!\,\,o}\!\!\!\!\!\!\!\!\:\,\perp\end{array}}Qualquer~d\acute{u}vida,~deixe~ um~coment\acute{a}rio

Perguntas interessantes