Manipulação de Arquivos
-
Primeiro crie 3 listas
- Uma lista que contem 5 frutas
- Uma lista que contem 5 cores
- Uma lista que contem 5 linguagens de programação
-
Crie um novo arquivo chamado
frutas.txt
e insira dentro dele todos as 5 frutas que estão na lista de frutas; -
Imprima na tela todas as linhas que estao dentro do arquivo
frutas.txt
; -
Sem apagar os dados que já estão dentro de
frutas.txt
, adicione todas as cores que estão dentro da sua lista de cores ao arquivosfrutas.txt
; -
Crie um novo arquivo chamado
Top 5 Linguagens.txt
e popule o arquivo, de forma com que cada linuguagem ocupe apenas uma linha; -
BONUS - Como você poderia criar vários arquivos diferentes usando um laço
for
e strings dinâmicos(f'{}')
, e também não escrever nada dentro deles?
import os
# 3 listas
frutas = ['maçã', 'laranja', 'melancia', 'uva', 'banana']
cores = ['vermelho', 'amarelo', 'verde', 'azul', 'preto']
linguagens = ['python', 'java', 'rust', 'php', 'c']
# Desafio 1 - Crie um novo arquivo chamado frutas.txt e insira dentro dele
# todos as 5 frutas que estão na lista de frutas
nome_arquivo = 'frutas.txt'
local_arquivo = 'assets'
arquivo_txt = os.path.join(local_arquivo, nome_arquivo)
with open(arquivo_txt, 'w', encoding='utf-8', newline='') as arquivo:
for i in frutas:
arquivo.write(i + os.linesep)
# Desafio 2 - Imprima na tela todas as linhas que estao dentro do arquivo
# frutas.txt
with open(arquivo_txt, 'r', encoding='utf-8') as arquivo:
for linha in arquivo:
print(linha.strip())
# Desafio 3 - Sem apagar os dados que já estão dentro de frutas.txt, adicione
# todas as cores que estão dentro da sua lista de cores ao arquivos frutas.txt
with open(arquivo_txt, 'a', encoding='utf-8', newline='') as arquivo:
for i in cores:
arquivo.write(i + os.linesep)
# Desafio 4 - Crie um novo arquivo chamado 'Top 5 Linguagens.txt' e popule o
# arquivo, de forma com que cada linuguagem ocupe apenas uma linha.
nome_arquivo = 'Top 5 Linguagens.txt'
local_arquivo = 'assets'
arquivo_txt = os.path.join(local_arquivo, nome_arquivo)
with open(arquivo_txt, 'w', encoding='utf-8', newline='') as arquivo:
for i in linguagens:
arquivo.write(i + os.linesep)
# BONUS - Como você poderia criar vários arquivos diferentes usando um laço for
# e strings dinâmicos(f'{}'), e também não escrever nada dentro deles?
local_arquivo = 'assets'
for i in range(5):
arquivo_txt = os.path.join(local_arquivo, 'bonus')
with open(f'{arquivo_txt}{i}.txt', 'w') as arquivo:
pass
maçã
laranja
melancia
uva
banana