Como salvar planilhas como CSV em Python
O problema é que…
Salve uma pasta de trabalho do Excel (.xlsx) como um arquivo CSV usando Aspose.Cells FOSS em Python. Carregue a pasta com Workbook(),Então , liga-me . save_as_csv() para escrever a planilha ativa em um arquivo de valores separados por vírgulas. Opcionalmente, passe uma CSVSaveOptions Objeto para controlar o comportamento delimitador, codificação e citação.
Precondições
Para salvar planilhas como CSV usando Aspose.Cells FOSS em Python, certifique-se de que seu ambiente atenda aos seguintes requisitos.
- Python 3.7 ou posterior instalado.
- Instalar Aspose.Cells FOSS através de
pip install aspose-cells-foss>=26.3.1 - Importar a biblioteca usando:
from aspose.cells_foss import Workbook - Familiaridade básica com o processamento de arquivos Python
Medidas de poupança
Passo 1: Instalar a Biblioteca
Instalar Aspose.Cells FOSS a partir de PyPI. Não é necessário arquivo de licença para o uso do Foss.
pip install aspose-cells-fossPasso 2: Carregar o livro de trabalho
Instanciar Workbook com o caminho para um sistema existente. .xlsx O constructor aceita um opcional password Parâmetro para quadros de trabalho protegidos.
from aspose.cells_foss import Workbook
workbook = Workbook("input.xlsx")Para trabalhar com uma nova pasta de trabalho, omita o caminho do arquivo:
from aspose.cells_foss import Workbook
workbook = Workbook()
worksheet = workbook.worksheets[0]
# Populate some cells
worksheet.cells["A1"].value = "Product"
worksheet.cells["B1"].value = "Price"
worksheet.cells["A2"].value = "Widget"
worksheet.cells["B2"].value = 9.99
worksheet.cells["A3"].value = "Gadget"
worksheet.cells["B3"].value = 24.95Passo 3: Salvar a folha ativa como CSV
Chama-me . Workbook.save_as_csv() O método escreve a primeira folha de cálculo (ativa) por padrão.
workbook.save_as_csv("output.csv")Em alternativa, use o medicamento genérico: Workbook.save() método Aspose.Cells FOSS deduz o formato CSV do .csv extensão:
workbook.save("output.csv")Ambas as chamadas produzem saída idêntica quando não são necessárias opções personalizadas.
Passo 4: Salvar com opções CSV
Workbook.save_as_csv() aceita uma opção de CSVSaveOptions O artigo 85.o do Tratado CE é aplicável a todos os Estados-Membros. CSVSaveOptions de: aspose.cells_foss.csv_handler e passar diretamente para controlar o comportamento das exportações, como a escolha de um delimitador ou codificação não padrão.
from aspose.cells_foss import Workbook
from aspose.cells_foss.csv_handler import CSVSaveOptions
workbook = Workbook("input.xlsx")
# Create options instance — configure attributes per your environment's needs
options = CSVSaveOptions()
workbook.save_as_csv("output_custom.csv", options)Quando não . CSVSaveOptions é aprovado, save_as_csv() usa os padrões da biblioteca (delimitar vírgula, codificação UTF-8). Passe o objeto de opções sempre que você precisar analisar esses padronizados programaticamente.
Passo 5: Exportar uma planilha específica
Quando uma pasta de trabalho contém várias folhas, a folha ativa é exportada. Use Workbook.set_active_worksheet() para escolher a folha que exportar antes de guardar.
from aspose.cells_foss import Workbook
workbook = Workbook("multi_sheet.xlsx")
# Export the second worksheet (index 1)
workbook.set_active_worksheet(1)
workbook.save_as_csv("sheet2_output.csv")Para exportar cada folha para o seu próprio arquivo CSV, iterar sobre workbook.worksheets:
from aspose.cells_foss import Workbook
workbook = Workbook("multi_sheet.xlsx")
for index in range(len(workbook.worksheets)):
ws = workbook.get_worksheet_by_index(index)
workbook.set_active_worksheet(index)
workbook.save_as_csv(f"sheet_{ws.name}.csv")Exemplo completo
O exemplo autônomo a seguir cria uma pasta de trabalho, preenche-a com dados de amostra e salva-o como um CSV padrão e um CVCS definido por pontos.
from aspose.cells_foss import Workbook
from aspose.cells_foss.csv_handler import CSVSaveOptions
# Create workbook and populate data
workbook = Workbook()
worksheet = workbook.worksheets[0]
headers = ["Name", "Department", "Salary"]
rows = [
["Alice", "Engineering", 95000],
["Bob", "Marketing", 72000],
["Carol", "Finance", 81000],
]
for col, header in enumerate(headers):
col_letter = chr(ord("A") + col)
worksheet.cells[f"{col_letter}1"].value = header
for row_idx, row in enumerate(rows, start=2):
for col_idx, val in enumerate(row):
col_letter = chr(ord("A") + col_idx)
worksheet.cells[f"{col_letter}{row_idx}"].value = val
# Save as standard CSV (default options)
workbook.save_as_csv("employees.csv")
# Save with explicit CSVSaveOptions instance
options = CSVSaveOptions()
workbook.save_as_csv("employees_custom.csv", options)
print("CSV files written successfully.")Problemas comuns
Arquivo de saída vazio
Se o CSV de saída estiver vazio ou conter apenas linhas vazias, verifique se os valores das células foram atribuídos antes da chamada. save_as_csv().O método exporta a folha de cálculo ativa confirma que a página correta está activa usando o código-fonte . workbook.get_active_worksheet().
Problemas de codificação (caráteres confusos)
Ao abrir um CSV no Excel e ver caracteres corrompidos, verifique a codificação usada durante a exportação. Aspose.Cells FOSS padrões para UTF-8; O Excel no Windows pode esperar que uma marca de ordem de bytes (BOM) reconheça a código correctamente. Configure a cópia via CSVSaveOptions E passar para o save_as_csv().
Livros de trabalho com várias folhas Exportar apenas uma folha
CSV é um formato de tabela única; apenas uma planilha pode ser salva por arquivo. Exporte cada folha individualmente usando o código-fonte: set_active_worksheet(index) como mostrado na etapa 5.
Células que contêm o delimitador
Se um valor de célula contém o caracter delimitar (por exemplo, uma vírgula na saída com virguela), Aspose.Cells FOSS cita automaticamente o valor durante a exportação. Use CSVSaveOptions Adaptar o comportamento de cotação, se necessário.
FAQ
P: Sim. workbook.save("output.csv") produzir o mesmo resultado que a save_as_csv()?
- Sim, é verdade.
Workbook.save()Inspecciona a extensão do ficheiro e delega à Comissão os poderes de elaboração dos documentos.save_as_csv()quando a extensão for.csv.- Ligue.save_as_csv()Diretamente e passar umCSVSaveOptionsexemplo, quando você precisa personalizar a exportação para além das predefinições embutidas.
P: Posso exportar para uma cadeia de caracteres CSV em vez de um arquivo?
Sim, usa. CSVHandler.save_csv_to_string(workbook, options) de: aspose.cells_foss.csv_handler. Isto retorna o conteúdo CSV como uma cadeia Python, que você pode registrar, carregar ou processar sem tocar no sistema de arquivos.
from aspose.cells_foss import Workbook
from aspose.cells_foss.csv_handler import CSVHandler, CSVSaveOptions
workbook = Workbook("input.xlsx")
csv_string = CSVHandler.save_csv_to_string(workbook, CSVSaveOptions())
print(csv_string)P: Como posso carregar um CSV de volta a uma pasta de trabalho depois da salvação?
Utilização: Workbook.load_csv("file.csv") sobre uma situação existente. Workbook instância, ou chamar a função de conveniência load_csv_workbook("file.csv") de: aspose.cells_foss.csv_handler para obter um livro de trabalho pronto a usar em uma só etapa.
P: Que versões do Python são suportadas?
Aspose.Cells FOSS requires Python 3.7 or later. No additional native extensions are needed for CSV export; the library is pure Python.
P: Posso salvar apenas parte de uma planilha (uma gama de células) como CSV?
Aspose.Cells FOSS exports the full used range of the active worksheet. To restrict output to a specific range, copy the desired cells into a temporary workbook and export that workbook.
Ver também:
- Como salvar arquivos com Aspose.Cells FOSS visão geral das operações de salvamento que abrangem o XLSX e a Markdown
- Como converter CSV para JSON em Python Carregar CSV e exportar para formato JSON
- Como exportar Excel para Markdown em Python Tabela de desvalorização exportação utilizando
save_as_markdown() - Aspose.Cells FOSS for Python: Developer Guide documentação completa das características
- Referência API —
Workbook,CSVHandler,CSVSaveOptions - Aspose.Cells for Python — Enterprise Knowledge Base