SlideShare uma empresa Scribd logo
1 de 21
Baixar para ler offline
Manipulando Planilhas Excel
com Python
APOIO:
Agenda
• Motivação para essa oficina
• Python, o que é? Onde vive? Do que se alimenta?
• Biblioteca openpyxl
• Gerando planilhas Excel com python
• Lendo planilhas Excel com python
APOIO:
Motivação para essa oficina
APOIO:
Produtividade = Automatizar tarefas!
Python, o que é? Onde vive? Do que
se alimenta?
APOIO:
Python é uma linguagem de programação:
●
Multiplataforma
●
Open Source (código-aberto)
●
Simples e fácil
●
Multi-uso (verdadeiro “bombril” :P )
Python, o que é? Onde vive? Do que
se alimenta?
APOIO:
Quem usa python?
●
Netflix
●
Globo
●
Spotify
●
Google Guido Van Rossum Monty Python
Python, o que é? Onde vive? Do que
se alimenta?
APOIO:
O que é necessário para usar python?
●
Baixar e instalar o interpretador Python
https://www.python.org/downloads/
●
Bloco de notas e linha de comando ou IDLE
Python, o que é? Onde vive? Do que
se alimenta?
APOIO:
Ambientando com o IDLE
Biblioteca openpyxl
APOIO:
●
Uma biblioteca open source mantida por voluntários, para
ler e gravar arquivos do Excel 2010 (xlsx, xslsm, xltx, xltm)
●
Baseado no projeto open source PHPExcel
●
Para instalar a biblioteca deve-se digitar na linha de
comando (cmd, no caso do Windows):
pip install openpyxl
●
https://openpyxl.readthedocs.io/en/stable/
Gerando planilhas Excel com Python
APOIO:
●
Deve-se importar a classe Workbook da biblioteca openpyxl
●
Gerar um objeto Workbook, que contém as informações do
arquivo excel, e um objeto Sheet que contém as informações
de uma planilha do arquivo excel
Gerando planilhas Excel com Python
APOIO:
●
Deve-se importar a classe Workbook da biblioteca openpyxl
●
Gerar um objeto Workbook, que contém as informações de
um arquivo excel, e um objeto Sheet que contém as
informações de uma planilha ativado arquivo excel
Gerando planilhas Excel com Python
APOIO:
●
Para colocar dados nas células a maneira mais simples é
referenciar o objeto sheet através de coluna e linha: A1, A2,
B1, B2, etc
●
Para gravar basta invocar a operação save do objeto book,
informando o nome do documento que deve ser gravado.
Gerando planilhas Excel com Python
APOIO:
Lendo planilhas excel com Python
APOIO:
●
Para abrir um arquivo excel deve-se importar a função
load_workbook() da biblioteca openpyxl
●
Chamando a função load_workbook('arquivo.xlsx') ele
retorna um objeto book com os dados do arquivo excel. Para
saber quais os nomes das planilhas existentes pode usar a
propriedade book.sheetnames
Lendo planilhas excel com Python
APOIO:
●
Para obter o objeto sheet do arquivo aberto, basta
referenciar ao nome da planilha existente, no exemplo
'Planilha1'
●
Para recuperar um valor de uma célula, basta se referenciar a
célula e obter a propriedade “value” dela, depois exibir o
valor com a função print().
Lendo planilhas excel com Python
APOIO:
●
Para saber quais as células ocupadas na planilha, é possível
obter os limites através da propriedade “dimensions” do
objeto sheet.
●
É possível exibir o seu conteúdo, utilizando as dimensões
junto com a estrutura de repetição “for” para poder ler todo
o conteúdo da planilha de maneira dinâmica.
Lendo planilhas excel com Python
APOIO:
●
É possível realizar operações matemáticas, como a soma de
todos os valores, os valores devem ser do tipo número, não
podem ser caracteres (Strings)
Lendo planilhas excel com Python
APOIO:
●
A grande vantagem vem agora! Realizar a manipulação de
vários arquivos ao mesmo tempo, desde de que você saiba
onde estão as informações.
●
Criando uma lista com nomes de arquivos, é possível montar
um programa python para ler todos os arquivos e realizar
operações matemáticas.
Lendo planilhas excel com Python
APOIO:
Lendo planilhas excel com Python
APOIO:
●
É possível utilizar o load_workbook para abrir os arquivos
excel, e o Workbook para gerar um outro arquivo, com o
resultado de uma operação aritmética da leitura dos
arquivos excel.
●
Para adicionar valores dinamicamente é possível usar a
operação “append()” de um objeto sheet
●
O conteúdo das variáveis f e soma serão adicionados a nova
planilha.
Lendo planilhas excel com Python
APOIO:
OBRIGADO!

Mais conteúdo relacionado

Mais procurados

Spring IO 2023 - Dynamic OpenAPIs with Spring Cloud Gateway
Spring IO 2023 - Dynamic OpenAPIs with Spring Cloud GatewaySpring IO 2023 - Dynamic OpenAPIs with Spring Cloud Gateway
Spring IO 2023 - Dynamic OpenAPIs with Spring Cloud GatewayIván López Martín
 
Introdução à Programação Web com Angular
Introdução à Programação Web com AngularIntrodução à Programação Web com Angular
Introdução à Programação Web com AngularElmano Cavalcanti
 
Sistemas Distribuídos e PHP - Darkmira Tour BR 2016
Sistemas Distribuídos e PHP - Darkmira Tour BR 2016Sistemas Distribuídos e PHP - Darkmira Tour BR 2016
Sistemas Distribuídos e PHP - Darkmira Tour BR 2016Diana Ungaro Arnos
 
Kubernetes in 30 minutes (2017/03/10)
Kubernetes in 30 minutes (2017/03/10)Kubernetes in 30 minutes (2017/03/10)
Kubernetes in 30 minutes (2017/03/10)lestrrat
 
DDD Basics - Context mapping
DDD Basics - Context mappingDDD Basics - Context mapping
DDD Basics - Context mappingStijn Volders
 
Programação Orientação a Objetos - Herança
Programação Orientação a Objetos - HerançaProgramação Orientação a Objetos - Herança
Programação Orientação a Objetos - HerançaDaniel Brandão
 
Node.JS - Workshop do básico ao avançado
Node.JS - Workshop do básico ao avançadoNode.JS - Workshop do básico ao avançado
Node.JS - Workshop do básico ao avançadoEduardo Bohrer
 
Treinamento Docker Básico
Treinamento Docker BásicoTreinamento Docker Básico
Treinamento Docker BásicoAndré Justi
 
Fundamentos e princípios do projeto orientado a objetos
Fundamentos e princípios do projeto orientado a objetosFundamentos e princípios do projeto orientado a objetos
Fundamentos e princípios do projeto orientado a objetosEvandro Agnes
 
Minecraft in 500 lines with Pyglet - PyCon UK
Minecraft in 500 lines with Pyglet - PyCon UKMinecraft in 500 lines with Pyglet - PyCon UK
Minecraft in 500 lines with Pyglet - PyCon UKRichard Donkin
 
從實戰經驗看到的 K8S 導入痛點
從實戰經驗看到的 K8S 導入痛點從實戰經驗看到的 K8S 導入痛點
從實戰經驗看到的 K8S 導入痛點Will Huang
 
Metodologia agil scrum
Metodologia agil scrumMetodologia agil scrum
Metodologia agil scrumPablo Juan ஃ
 
Programação Orientada a Objetos
Programação Orientada a ObjetosProgramação Orientada a Objetos
Programação Orientada a ObjetosIgor Takenami
 
Integrate ManifoldCF with Solr
Integrate ManifoldCF with SolrIntegrate ManifoldCF with Solr
Integrate ManifoldCF with Solrfrancelabs
 
Kubernetes dealing with storage and persistence
Kubernetes  dealing with storage and persistenceKubernetes  dealing with storage and persistence
Kubernetes dealing with storage and persistenceJanakiram MSV
 
What Is A Docker Container? | Docker Container Tutorial For Beginners| Docker...
What Is A Docker Container? | Docker Container Tutorial For Beginners| Docker...What Is A Docker Container? | Docker Container Tutorial For Beginners| Docker...
What Is A Docker Container? | Docker Container Tutorial For Beginners| Docker...Simplilearn
 

Mais procurados (20)

Spring IO 2023 - Dynamic OpenAPIs with Spring Cloud Gateway
Spring IO 2023 - Dynamic OpenAPIs with Spring Cloud GatewaySpring IO 2023 - Dynamic OpenAPIs with Spring Cloud Gateway
Spring IO 2023 - Dynamic OpenAPIs with Spring Cloud Gateway
 
Introdução à Programação Web com Angular
Introdução à Programação Web com AngularIntrodução à Programação Web com Angular
Introdução à Programação Web com Angular
 
Sistemas Distribuídos e PHP - Darkmira Tour BR 2016
Sistemas Distribuídos e PHP - Darkmira Tour BR 2016Sistemas Distribuídos e PHP - Darkmira Tour BR 2016
Sistemas Distribuídos e PHP - Darkmira Tour BR 2016
 
Kubernetes in 30 minutes (2017/03/10)
Kubernetes in 30 minutes (2017/03/10)Kubernetes in 30 minutes (2017/03/10)
Kubernetes in 30 minutes (2017/03/10)
 
DDD Basics - Context mapping
DDD Basics - Context mappingDDD Basics - Context mapping
DDD Basics - Context mapping
 
Como Estabelecer e Gerenciar Indicadores de Desempenho para um PMO
Como Estabelecer e Gerenciar Indicadores de Desempenho para um PMOComo Estabelecer e Gerenciar Indicadores de Desempenho para um PMO
Como Estabelecer e Gerenciar Indicadores de Desempenho para um PMO
 
Programação Orientação a Objetos - Herança
Programação Orientação a Objetos - HerançaProgramação Orientação a Objetos - Herança
Programação Orientação a Objetos - Herança
 
kubernetes, pourquoi et comment
kubernetes, pourquoi et commentkubernetes, pourquoi et comment
kubernetes, pourquoi et comment
 
Node.JS - Workshop do básico ao avançado
Node.JS - Workshop do básico ao avançadoNode.JS - Workshop do básico ao avançado
Node.JS - Workshop do básico ao avançado
 
Treinamento Docker Básico
Treinamento Docker BásicoTreinamento Docker Básico
Treinamento Docker Básico
 
Fundamentos e princípios do projeto orientado a objetos
Fundamentos e princípios do projeto orientado a objetosFundamentos e princípios do projeto orientado a objetos
Fundamentos e princípios do projeto orientado a objetos
 
Minecraft in 500 lines with Pyglet - PyCon UK
Minecraft in 500 lines with Pyglet - PyCon UKMinecraft in 500 lines with Pyglet - PyCon UK
Minecraft in 500 lines with Pyglet - PyCon UK
 
從實戰經驗看到的 K8S 導入痛點
從實戰經驗看到的 K8S 導入痛點從實戰經驗看到的 K8S 導入痛點
從實戰經驗看到的 K8S 導入痛點
 
Drupal Workshop: Introducción al Backend de Drupal
Drupal  Workshop: Introducción al Backend de DrupalDrupal  Workshop: Introducción al Backend de Drupal
Drupal Workshop: Introducción al Backend de Drupal
 
Metodologia agil scrum
Metodologia agil scrumMetodologia agil scrum
Metodologia agil scrum
 
Programação Orientada a Objetos
Programação Orientada a ObjetosProgramação Orientada a Objetos
Programação Orientada a Objetos
 
Integrate ManifoldCF with Solr
Integrate ManifoldCF with SolrIntegrate ManifoldCF with Solr
Integrate ManifoldCF with Solr
 
Governanca Ágil - TOTVS TDC 2019
Governanca Ágil - TOTVS TDC 2019Governanca Ágil - TOTVS TDC 2019
Governanca Ágil - TOTVS TDC 2019
 
Kubernetes dealing with storage and persistence
Kubernetes  dealing with storage and persistenceKubernetes  dealing with storage and persistence
Kubernetes dealing with storage and persistence
 
What Is A Docker Container? | Docker Container Tutorial For Beginners| Docker...
What Is A Docker Container? | Docker Container Tutorial For Beginners| Docker...What Is A Docker Container? | Docker Container Tutorial For Beginners| Docker...
What Is A Docker Container? | Docker Container Tutorial For Beginners| Docker...
 

Semelhante a Manipulando Excel com Python

Programando para web com python - Introdução a Python
Programando para web com python - Introdução a PythonProgramando para web com python - Introdução a Python
Programando para web com python - Introdução a PythonAlvaro Oliveira
 
Linguagem de Programação Python
Linguagem de Programação PythonLinguagem de Programação Python
Linguagem de Programação PythonJunior Sobrenome
 
Curso de Python (Básico) - Português
Curso de Python (Básico) - PortuguêsCurso de Python (Básico) - Português
Curso de Python (Básico) - PortuguêsHelio Colombe
 
Python para desenvolvedores - material apoio (parte I)
Python para desenvolvedores - material apoio (parte I)Python para desenvolvedores - material apoio (parte I)
Python para desenvolvedores - material apoio (parte I)Marcelo Barros de Almeida
 
Open Source Érica Pimenta
Open Source   Érica PimentaOpen Source   Érica Pimenta
Open Source Érica Pimentaerica pimenta
 
Computação Científica com SciPy - Brevíssimo Tutorial
Computação Científica com SciPy - Brevíssimo TutorialComputação Científica com SciPy - Brevíssimo Tutorial
Computação Científica com SciPy - Brevíssimo TutorialFabio Spanhol
 
Open office.org 2.0
Open office.org 2.0Open office.org 2.0
Open office.org 2.0LeciOne
 
Análise Exploratória de Dados com Python, Pandas e Numpy - Fernando Feltrin -...
Análise Exploratória de Dados com Python, Pandas e Numpy - Fernando Feltrin -...Análise Exploratória de Dados com Python, Pandas e Numpy - Fernando Feltrin -...
Análise Exploratória de Dados com Python, Pandas e Numpy - Fernando Feltrin -...Fernando Belome Feltrin
 
Cherrypy - um framework para desenvolvimento rápido de aplicações web
Cherrypy - um framework para desenvolvimento rápido de aplicações webCherrypy - um framework para desenvolvimento rápido de aplicações web
Cherrypy - um framework para desenvolvimento rápido de aplicações webAlvaro Oliveira
 
Aula3PythonBasico (1).ppt
Aula3PythonBasico (1).pptAula3PythonBasico (1).ppt
Aula3PythonBasico (1).pptMichaelArrais1
 
Biblioteca e Pacotes Python para Análise de Dados
Biblioteca e Pacotes Python para Análise de DadosBiblioteca e Pacotes Python para Análise de Dados
Biblioteca e Pacotes Python para Análise de DadosDaniel da Costa Mendes
 

Semelhante a Manipulando Excel com Python (20)

Programando para web com python - Introdução a Python
Programando para web com python - Introdução a PythonProgramando para web com python - Introdução a Python
Programando para web com python - Introdução a Python
 
Linguagem de Programação Python
Linguagem de Programação PythonLinguagem de Programação Python
Linguagem de Programação Python
 
Curso de Python (Básico) - Português
Curso de Python (Básico) - PortuguêsCurso de Python (Básico) - Português
Curso de Python (Básico) - Português
 
Introducao ao python
Introducao ao pythonIntroducao ao python
Introducao ao python
 
Canivete python
Canivete pythonCanivete python
Canivete python
 
Python para desenvolvedores - material apoio (parte I)
Python para desenvolvedores - material apoio (parte I)Python para desenvolvedores - material apoio (parte I)
Python para desenvolvedores - material apoio (parte I)
 
Open Source Impress
Open Source   ImpressOpen Source   Impress
Open Source Impress
 
Open Source Impress
Open Source   ImpressOpen Source   Impress
Open Source Impress
 
Open Source Érica Pimenta
Open Source   Érica PimentaOpen Source   Érica Pimenta
Open Source Érica Pimenta
 
Tutorial Python - 1
Tutorial Python - 1Tutorial Python - 1
Tutorial Python - 1
 
Computação Científica com SciPy - Brevíssimo Tutorial
Computação Científica com SciPy - Brevíssimo TutorialComputação Científica com SciPy - Brevíssimo Tutorial
Computação Científica com SciPy - Brevíssimo Tutorial
 
Open office.org 2.0
Open office.org 2.0Open office.org 2.0
Open office.org 2.0
 
Análise Exploratória de Dados com Python, Pandas e Numpy - Fernando Feltrin -...
Análise Exploratória de Dados com Python, Pandas e Numpy - Fernando Feltrin -...Análise Exploratória de Dados com Python, Pandas e Numpy - Fernando Feltrin -...
Análise Exploratória de Dados com Python, Pandas e Numpy - Fernando Feltrin -...
 
Workshop Python.2
Workshop Python.2Workshop Python.2
Workshop Python.2
 
Cherrypy - um framework para desenvolvimento rápido de aplicações web
Cherrypy - um framework para desenvolvimento rápido de aplicações webCherrypy - um framework para desenvolvimento rápido de aplicações web
Cherrypy - um framework para desenvolvimento rápido de aplicações web
 
Python
PythonPython
Python
 
Aula3PythonBasico (1).ppt
Aula3PythonBasico (1).pptAula3PythonBasico (1).ppt
Aula3PythonBasico (1).ppt
 
Aula3PythonBasico.ppt
Aula3PythonBasico.pptAula3PythonBasico.ppt
Aula3PythonBasico.ppt
 
Apostila módulo 5 - Calc - fonte IFRS
Apostila módulo 5 - Calc - fonte IFRSApostila módulo 5 - Calc - fonte IFRS
Apostila módulo 5 - Calc - fonte IFRS
 
Biblioteca e Pacotes Python para Análise de Dados
Biblioteca e Pacotes Python para Análise de DadosBiblioteca e Pacotes Python para Análise de Dados
Biblioteca e Pacotes Python para Análise de Dados
 

Manipulando Excel com Python

  • 2. Agenda • Motivação para essa oficina • Python, o que é? Onde vive? Do que se alimenta? • Biblioteca openpyxl • Gerando planilhas Excel com python • Lendo planilhas Excel com python APOIO:
  • 3. Motivação para essa oficina APOIO: Produtividade = Automatizar tarefas!
  • 4. Python, o que é? Onde vive? Do que se alimenta? APOIO: Python é uma linguagem de programação: ● Multiplataforma ● Open Source (código-aberto) ● Simples e fácil ● Multi-uso (verdadeiro “bombril” :P )
  • 5. Python, o que é? Onde vive? Do que se alimenta? APOIO: Quem usa python? ● Netflix ● Globo ● Spotify ● Google Guido Van Rossum Monty Python
  • 6. Python, o que é? Onde vive? Do que se alimenta? APOIO: O que é necessário para usar python? ● Baixar e instalar o interpretador Python https://www.python.org/downloads/ ● Bloco de notas e linha de comando ou IDLE
  • 7. Python, o que é? Onde vive? Do que se alimenta? APOIO: Ambientando com o IDLE
  • 8. Biblioteca openpyxl APOIO: ● Uma biblioteca open source mantida por voluntários, para ler e gravar arquivos do Excel 2010 (xlsx, xslsm, xltx, xltm) ● Baseado no projeto open source PHPExcel ● Para instalar a biblioteca deve-se digitar na linha de comando (cmd, no caso do Windows): pip install openpyxl ● https://openpyxl.readthedocs.io/en/stable/
  • 9. Gerando planilhas Excel com Python APOIO: ● Deve-se importar a classe Workbook da biblioteca openpyxl ● Gerar um objeto Workbook, que contém as informações do arquivo excel, e um objeto Sheet que contém as informações de uma planilha do arquivo excel
  • 10. Gerando planilhas Excel com Python APOIO: ● Deve-se importar a classe Workbook da biblioteca openpyxl ● Gerar um objeto Workbook, que contém as informações de um arquivo excel, e um objeto Sheet que contém as informações de uma planilha ativado arquivo excel
  • 11. Gerando planilhas Excel com Python APOIO: ● Para colocar dados nas células a maneira mais simples é referenciar o objeto sheet através de coluna e linha: A1, A2, B1, B2, etc ● Para gravar basta invocar a operação save do objeto book, informando o nome do documento que deve ser gravado.
  • 12. Gerando planilhas Excel com Python APOIO:
  • 13. Lendo planilhas excel com Python APOIO: ● Para abrir um arquivo excel deve-se importar a função load_workbook() da biblioteca openpyxl ● Chamando a função load_workbook('arquivo.xlsx') ele retorna um objeto book com os dados do arquivo excel. Para saber quais os nomes das planilhas existentes pode usar a propriedade book.sheetnames
  • 14. Lendo planilhas excel com Python APOIO: ● Para obter o objeto sheet do arquivo aberto, basta referenciar ao nome da planilha existente, no exemplo 'Planilha1' ● Para recuperar um valor de uma célula, basta se referenciar a célula e obter a propriedade “value” dela, depois exibir o valor com a função print().
  • 15. Lendo planilhas excel com Python APOIO: ● Para saber quais as células ocupadas na planilha, é possível obter os limites através da propriedade “dimensions” do objeto sheet. ● É possível exibir o seu conteúdo, utilizando as dimensões junto com a estrutura de repetição “for” para poder ler todo o conteúdo da planilha de maneira dinâmica.
  • 16. Lendo planilhas excel com Python APOIO: ● É possível realizar operações matemáticas, como a soma de todos os valores, os valores devem ser do tipo número, não podem ser caracteres (Strings)
  • 17. Lendo planilhas excel com Python APOIO: ● A grande vantagem vem agora! Realizar a manipulação de vários arquivos ao mesmo tempo, desde de que você saiba onde estão as informações. ● Criando uma lista com nomes de arquivos, é possível montar um programa python para ler todos os arquivos e realizar operações matemáticas.
  • 18. Lendo planilhas excel com Python APOIO:
  • 19. Lendo planilhas excel com Python APOIO: ● É possível utilizar o load_workbook para abrir os arquivos excel, e o Workbook para gerar um outro arquivo, com o resultado de uma operação aritmética da leitura dos arquivos excel. ● Para adicionar valores dinamicamente é possível usar a operação “append()” de um objeto sheet ● O conteúdo das variáveis f e soma serão adicionados a nova planilha.
  • 20. Lendo planilhas excel com Python APOIO: