From b0b051fb64a75516f6d282808b5ed4869cfb3c07 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Luiz=20Ot=C3=A1vio?= Date: Sun, 19 Feb 2023 07:53:29 -0300 Subject: [PATCH] openpyxl - criando uma planilha do Excel (Workbook e Worksheet) --- aula199/main.py | 34 +++++++++++++++++++++++++++++++++- aula199/workbook.xlsx | Bin 0 -> 4940 bytes 2 files changed, 33 insertions(+), 1 deletion(-) create mode 100644 aula199/workbook.xlsx diff --git a/aula199/main.py b/aula199/main.py index 1867dcf..5935397 100644 --- a/aula199/main.py +++ b/aula199/main.py @@ -1,4 +1,4 @@ -# openpyxl para arquivos Excel xlsx, xlsm, xltx e xltm (instalação) +# openpyxl - criando uma planilha do Excel (Workbook e Worksheet) # Com essa biblioteca será possível ler e escrever dados em células # específicas, formatar células, inserir gráficos, # criar fórmulas, adicionar imagens e outros elementos gráficos às suas @@ -7,3 +7,35 @@ # manipulação de grandes quantidades de informações. # Instalação necessária: pip install openpyxl # Documentação: https://openpyxl.readthedocs.io/en/stable/ +from pathlib import Path + +from openpyxl import Workbook +from openpyxl.worksheet.worksheet import Worksheet + +ROOT_FOLDER = Path(__file__).parent +WORKBOOK_PATH = ROOT_FOLDER / 'workbook.xlsx' + +workbook = Workbook() +worksheet: Worksheet = workbook.active + +# Criando os cabeçalhos +worksheet.cell(1, 1, 'Nome') +worksheet.cell(1, 2, 'Idade') +worksheet.cell(1, 3, 'Nota') + +students = [ + # nome idade nota + ['João', 14, 5.5], + ['Maria', 13, 9.7], + ['Luiz', 15, 8.8], + ['Alberto', 16, 10], +] + +# for i, student_row in enumerate(students, start=2): +# for j, student_column in enumerate(student_row, start=1): +# worksheet.cell(i, j, student_column) + +for student in students: + worksheet.append(student) + +workbook.save(WORKBOOK_PATH) diff --git a/aula199/workbook.xlsx b/aula199/workbook.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..2c7104f96f520ab2b04b4a833bc0bd1c1e0a9e9b GIT binary patch literal 4940 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 literal 0 HcmV?d00001