Arquivos CSV são amplamente utilizados para armazenar dados tabulares. Python fornece o módulo csv para facilitar a leitura e escrita desses arquivos.
Lendo Arquivos CSV
Exemplo de Código:
import csv
with open('dados.csv', newline='') as csvfile:
leitor = csv.reader(csvfile)
for linha in leitor:
print(linha)Escrevendo em Arquivos CSV
Exemplo de Código:
import csv
with open('dados.csv', 'w', newline='') as csvfile:
escritor = csv.writer(csvfile)
escritor.writerow(['Nome', 'Idade'])
escritor.writerow(['Alice', 30])Exemplo
Vamos abordar o problema proposto em várias etapas, começando pelo pseudocódigo para o algoritmo de cadastramento de alunos utilizando a estrutura de registros. Em seguida, implementaremos o código em Python para manipulação de arquivos CSV.
Cadastramento de alunos
- Monte o algoritmo de cadastramento de alunos utilizando a estrutura de registros.
- Represente o algoritmo em pseudocódigo.
- Montar um algoritmo de cadastramento de alunos utilizando a estrutura de registros.
- Represente o algoritmo em pseudocódigo, e o código em Python para fazer um formulário, salvando em arquivo texto. Segue abaixo o pseudocódigo para o algoritmo de cadastramento de alunos utilizando a estrutura de registros, seguido do código em Python e salvar as informações em um arquivo de texto csv:
- Pseudocódigo: Definir a estrutura de registro para o aluno, contendo os campos nome, idade, matrícula e curso. Inicializar as variáveis de entrada nome, idade, matrícula e curso.
- Criar um formulário com campos de entrada para nome, idade, matrícula e curso.
- Ler as informações de entrada do usuário e armazená-las nas variáveis correspondentes.
- Criar um objeto do tipo Aluno com as informações armazenadas nas variáveis.
- Escrever as informações do objeto Aluno em um arquivo de texto em csv.
- Exibir uma mensagem de confirmação para o usuário.
Diagrama:
erDiagram ALUNO { string Nome int Idade string Matricula string Curso } FILE { string CSV_File } ALUNO ||--|| FILE : "salvo em"
Pseudocódigo
1. Definir a estrutura de registro para o aluno:
- Nome
- Idade
- Matrícula
- Curso
2. Inicializar as variáveis de entrada:
- nome
- idade
- matrícula
- curso
3. Criar um formulário com campos de entrada para:
- nome
- idade
- matrícula
- curso
4. Ler as informações de entrada do usuário e armazená-las nas variáveis correspondentes:
- nome = ler entrada do usuário
- idade = ler entrada do usuário
- matrícula = ler entrada do usuário
- curso = ler entrada do usuário
5. Criar um objeto do tipo Aluno com as informações armazenadas:
- aluno = {nome, idade, matrícula, curso}
6. Escrever as informações do objeto Aluno em um arquivo de texto em formato CSV:
- abrir arquivo 'alunos.csv' no modo 'a'
- escrever {nome, idade, matrícula, curso} no arquivo
- fechar arquivo
7. Exibir uma mensagem de confirmação para o usuário:
- exibir "Aluno cadastrado com sucesso!"Implementação em Python
Passo 1: Definição da Estrutura de Registro e Cadastro de Aluno
Código em Python:
import csv
def cadastrar_aluno():
# Solicitar informações do aluno
nome = input("Digite o nome do aluno: ")
idade = input("Digite a idade do aluno: ")
matricula = input("Digite a matrícula do aluno: ")
curso = input("Digite o curso do aluno: ")
# Estrutura de registro para o aluno
aluno = {
'Nome': nome,
'Idade': idade,
'Matrícula': matricula,
'Curso': curso
}
# Escrever as informações no arquivo CSV
with open('alunos.csv', 'a', newline='') as csvfile:
fieldnames = ['Nome', 'Idade', 'Matrícula', 'Curso']
writer = csv.DictWriter(csvfile, fieldnames=fieldnames)
# Escrever cabeçalho se o arquivo estiver vazio
if csvfile.tell() == 0:
writer.writeheader()
writer.writerow(aluno)
print("Aluno cadastrado com sucesso!")
# Executar a função de cadastro de aluno
cadastrar_aluno()Explicação do Código
-
Importação do Módulo CSV:
import csvpara trabalhar com arquivos CSV.
-
Função
cadastrar_aluno():- Solicitamos ao usuário que insira as informações do aluno (nome, idade, matrícula, curso).
- Armazenamos essas informações em um dicionário
aluno. - Abrimos o arquivo
alunos.csvno modo de anexar ('a') e utilizamoscsv.DictWriterpara escrever os dados no formato CSV. - Verificamos se o arquivo está vazio (usando
csvfile.tell() == 0) e escrevemos o cabeçalho se necessário. - Escrevemos as informações do aluno no arquivo CSV.
- Exibimos uma mensagem de confirmação de sucesso.
Conclusão
Este exemplo ilustra como podemos usar Python para criar um registro de alunos, coletar dados via entrada do usuário, e armazenar esses dados em um arquivo CSV. A manipulação de arquivos CSV é uma habilidade essencial para muitos projetos, permitindo o armazenamento e a troca de dados de maneira estruturada e facilmente acessível. Experimente expandir este exemplo para incluir mais funcionalidades, como leitura de arquivos CSV, atualização de registros, ou até mesmo criação de uma interface gráfica com bibliotecas como Tkinter.
Referências
csv — Leitura e escrita de arquivos CSV — Documentação Python 3.13.0