📄 Documentação Oficial do Módulo CSV
| # | Comando / Função | O que faz | Exemplo |
|---|---|---|---|
| 1 | Built-in | O módulo CSV já vem instalado no Python. | import csv |
| 2 | pip install python-csv | Instalação de variante (raramente necessária). | pip install python-csv |
| 3 | csv.reader() | Cria um objeto leitor para iterar sobre as linhas. | reader = csv.reader(file) |
| 4 | next(reader) | Pula ou captura a primeira linha (cabeçalho). | header = next(reader) |
| 5 | csv.DictReader() | Lê as linhas como dicionários (chave=coluna). | reader = csv.DictReader(file) |
| 6 | delimiter=',' | Define o caractere separador (padrão vírgula). | csv.reader(f, delimiter=';') |
| 7 | quotechar='"' | Define o caractere para cercar campos com espaços. | csv.reader(f, quotechar='|') |
| 8 | csv.writer() | Cria um objeto para escrever dados em CSV. | writer = csv.writer(file) |
| 9 | writer.writerow() | Escreve uma única linha (lista de valores). | writer.writerow(['ID', 'Nome']) |
| 10 | writer.writerows() | Escreve múltiplas linhas de uma vez. | writer.writerows(lista_de_listas) |
| 11 | csv.DictWriter() | Objeto para escrever dicionários no CSV. | writer = csv.DictWriter(f, fieldnames=campos) |
| 12 | writer.writeheader() | Escreve os nomes das colunas no arquivo. | writer.writeheader() |
| 13 | csv.register_dialect() | Registra um novo formato personalizado. | csv.register_dialect('meu', delimiter='|') |
| 14 | csv.list_dialects() | Lista todos os nomes de dialetos registrados. | print(csv.list_dialects()) |
| 15 | csv.get_dialect() | Retorna as configurações de um dialeto. | d = csv.get_dialect('excel') |
| 16 | quoting=csv.QUOTE_ALL | Coloca aspas em todos os campos. | quoting=csv.QUOTE_ALL |
| 17 | quoting=csv.QUOTE_MINIMAL | Coloca aspas apenas onde necessário. | quoting=csv.QUOTE_MINIMAL |
| 18 | quoting=csv.QUOTE_NONNUMERIC | Aspas em campos não numéricos. | quoting=csv.QUOTE_NONNUMERIC |
| 19 | quoting=csv.QUOTE_NONE | Nunca coloca aspas (precisa de escapechar). | quoting=csv.QUOTE_NONE |
| 20 | escapechar='\\' | Caractere de escape para delimitadores. | escapechar='\\' |
| 21 | list(reader) | Converte todo o CSV em uma lista de listas. | dados = list(reader) |
| 22 | line_num | Atributo que retorna o número da linha lida. | print(reader.line_num) |
| 23 | fieldnames | Atributo do DictReader com os nomes das colunas. | print(reader.fieldnames) |
| 24 | lineterminator | Define o fim de linha (ex: \n ou \r\n). | lineterminator='\n' |
| 25 | encoding='utf-8' | Define a codificação ao abrir o arquivo. | open('f.csv', encoding='utf-8') |
| 26 | newline='' | Recomendado ao abrir CSV no Python 3. | open('f.csv', 'w', newline='') |
| 27 | for row in reader: | Itera sobre cada linha do arquivo. | for row in reader: print(row) |
| 28 | strict=True | Levanta erro se o CSV for inválido. | csv.reader(f, strict=True) |
| 29 | csv.Sniffer() | Tenta descobrir o formato do CSV automaticamente. | dialect = csv.Sniffer().sniff(f.read(1024)) |
| 30 | sniffer.has_header() | Checa se o arquivo parece ter um cabeçalho. | csv.Sniffer().has_header(sample) |