Exemplo de Solução
O seguinte programa mostra uma maneira de resolver este problema. Contudo, essa não é a única forma possível de solucioná-lo.
# Direitos Autorais 2020, Brigham Young University-Idaho. Todos os direitos reservados.
"""
Escreva um programa Python chamado provincias.py que leia o conteúdo
de provincias.txt para dentro de uma lista e depois modifique essa lista.
"""
def main():
# Lê o conteúdo de um arquivo de texto chamado
# provincias.txt para dentro de uma lista chamada lista_provincias.
lista_provincias = ler_lista("provincias.txt")
# Como auxílio de depuração, imprime a lista inteira.
print(lista_provincias)
# Remove o primeiro elemento da lista.
lista_provincias.pop(0)
# print(lista_provincias)
# Remove o último elemento da lista.
lista_provincias.pop()
# print(lista_provincias)
# Substitui todas as ocorrências de "AB" por "Alberta".
for i in range(len(lista_provincias)):
if lista_provincias[i] == "AB":
lista_provincias[i] = "Alberta"
# print(lista_provincias)
# Chama o método count da lista, que contará
# quantas vezes "Alberta" aparece na lista.
quantidade = lista_provincias.count("Alberta")
print()
print(f"Alberta aparece {quantidade} vezes na lista modificada.")
def ler_lista(nome_arquivo):
"""Lê o conteúdo de um arquivo de texto para uma lista
e retorna a lista contendo as linhas de texto.
Parâmetro nome_arquivo: nome do arquivo de texto a ser lido
Retorno: uma lista de strings
"""
# Cria uma lista vazia que armazenará
# as linhas de texto do arquivo.
lista_texto = []
# Abre o arquivo de texto para leitura e armazenar
# a referência para o arquivo aberto em uma variável chamada arquivo_texto.
with open(nome_arquivo, "rt", encoding="utf-8") as arquivo_texto:
# Lê o conteúdo do arquivo
# uma linha de cada vez.
for linha in arquivo_texto:
# Remove espaços em branco, se houver,
# do início e do fim da linha.
linha_limpa = linha.strip()
# Adiciona a linha limpa
# ao final da lista.
lista_texto.append(linha_limpa)
# Retorna a lista contendo as linhas de texto.
return lista_texto
# Se este arquivo for executado assim:
# > python provincias.py
# então chama a função main. Caso contrário, se este arquivo
# for apenas importado, pula a chamada de main.
if __name__ == "__main__":
main()