Curso Intensivo de Python – 3ª Edição

Uma Introdução Prática e Baseada em Projetos à Programação

Curso Intensivo de Python – 3ª Edição
× Curso Intensivo de Python – 3ª Edição

Curso Intensivo de Python – 3ª Edição

VER AMOSTRA

Autor:

ISBN impresso: 978-85-7522-843-2
ISBN ebook: 978-85-7522-844-9
Ano: 2023
Páginas: 624
Preço impresso: R$ 169,00 O ebook deste livro está disponível na Amazon.

7 opiniões | Opine sobre este livro

Descrição do livro

O Curso Intensivo de Python é o guia de programação Python mais vendido do mundo. Com essa introdução rápida e abrangente, você será capaz de escrever, programar, solucionar problemas e desenvolver aplicações que funcionam num piscar de olhos.

Comece aprendendo os conceitos básicos de programação, como variáveis, listas, classes e loops, e pratique a escrita de código limpo com exercícios para cada tópico. Você também aprenderá como tornar seus programas interativos e testar seu código com segurança antes de adicioná-lo a um projeto. Assim, é possível colocar seus conhecimentos em prática, desenvolvendo um jogo arcade inspirado no Space Invaders, criando um conjunto de visualizações de dados com bibliotecas úteis do Python e implementando uma aplicação simples online.

Com este livro, você aprenderá como:

• Usar bibliotecas e ferramentas efetivas do Python, como pytest, Pygame, Matplotlib, Plotly e Django.

• Criar jogos 2D cada vez mais complexos que respondam às teclas pressionadas e cliques do mouse.

• Gerar visualizações de dados interativas usando uma variedade de conjuntos de dados.

• Desenvolver aplicações que permitam aos usuários criar contas e gerenciar seus próprios dados e fazer deploy de aplicações online.

• Solucionar erros de código e resolver problemas comuns de programação.

Novidades desta edição: Esta terceira edição foi totalmente revisada para retratar o que há de mais recente em programação Python. A cobertura nova e atualizada inclui o VS Code para edição de texto, o módulo pathlib para manipulação de arquivos, pytest para testar seu código, bem como os recursos mais recentes da Matplotlib, do Plotly e do Django.

Se você está pensando em se aprofundar na programação, com o Curso Intensivo de Python você terá as habilidades para escrever programas rapidamente. Por que esperar mais? Apertem os cintos e vamos programar!

Ver menos ▲

Sumário

Sumário

  • Prefácio da terceira edição
  • Agradecimentos
  • Introdução
    • Noções básicas
  • Capítulo 1 ■ Primeiros passos
  • Configurando seu ambiente de programação
    • Versões do Python
    • Executando trechos de código Python
    • Sobre o editor VS Code
  • Python em diferentes sistemas operacionais
    • Python no Windows
    • Python no macOS
    • Python no Linux
  • Executando um programa Hello World
    • Instalando a extensão Python para VS Code
    • Executando hello_world py
  • Resolução de problemas
  • Executando programas Python em um terminal
    • No Windows
    • No macOS e no Linux
  • Recapitulando
  • Capítulo 2 ■ Variáveis e tipos de dados simples
  • O que realmente ocorre quando executamos o hello_world py
  • Variáveis
    • Nomeando e usando variáveis
    • Evitando erros em nomes ao usar variáveis
    • Variáveis são rótulos
  • Strings
    • Alterando letras maiúsculas e minúsculas em uma string com métodos
    • Usando variáveis em strings
    • Adicionando espaço em branco a strings com tabs ou quebras de linhas
    • Removendo espaços em branco com o strip()
    • Removendo prefixos
    • Evitando erros de sintaxe com strings
  • Números
    • Inteiros
    • Floats
    • Inteiros e floats
    • Underscores em números
    • Atribuição múltipla
    • Constantes
  • Comentários
    • Como escrever comentários?
    • Quais tipos de comentários você deve escrever?
  • Zen do Python
  • Recapitulando
  • Capítulo 3 ■ Introdução às listas
  • O que é uma lista?
    • Acessando os elementos em uma lista
    • As posições do índice começam em 0, não em 1
    • Usando valores individuais de uma lista
  • Modificando, adicionando e removendo elementos
    • Modificando elementos em uma lista
    • Adicionando elementos a uma lista
    • Removendo elementos de uma lista
  • Organizando uma lista
    • Ordenando uma lista permanentemente com o método sort()
    • Ordenando uma lista temporariamente com a função sorted()
    • Exibindo uma lista em ordem inversa
    • Identificando o tamanho de uma lista
  • Evitando erros de índice ao trabalhar com listas
  • Recapitulando
  • Capítulo 4 ■ Trabalhando com listas
  • Loops: percorrendo uma lista inteira
    • Análise minuciosa dos loops
    • Fazendo mais tarefas dentro de um loop for
    • Fazendo mais tarefas após usar um loop for
  • Evitando erros de indentação
    • Esquecendo da indentação
    • Esquecendo de indentar linhas adicionais
    • Indentando desnecessariamente
    • Indentando desnecessariamente após o loop
    • Esquecendo os dois-pontos
  • Criando listas numéricas
    • Usando a função range
    • Usando o range() para criar uma lista de números
    • Estatísticas simples com uma lista de números
    • List comprehensions
  • Trabalhando com parte de uma lista
    • Fatiando uma lista
    • Percorrendo uma fatia com um loop
    • Copiando uma lista
  • Tuplas
    • Definindo uma tupla
    • Percorrendo todos os valores em uma tupla com um loop
    • Sobrescrevendo uma tupla
  • Estilizando seu código
    • Guia de estilo
    • Indentação
    • Comprimento da linha
    • Linhas em branco
    • Outros guias de estilo
  • Recapitulando
  • Capítulo 5 ■ Instruções if
  • Um simples exemplo
  • Testes condicionais
    • Verificando a igualdade
    • Ignorando letras maiúsculas e minúsculas ao verificar a igualdade
    • Verificando a diferença
    • Comparações numéricas
    • Verificando múltiplas condições
    • Verificando se um valor está em uma lista
    • Verificando se um valor não está em uma lista
    • Expressões booleanas
  • Instruções if
    • Instruções if simples
    • Instruções if-else
    • Sequência if-elif-else
    • Usando múltiplos blocos elif
    • Omitindo o bloco else
    • Testando múltiplas condições
  • Usando instruções if com listas
    • Verificando elementos especiais
    • Verificando se uma lista não está vazia
    • Usando múltiplas listas
  • Estilizando suas instruções if
  • Recapitulando
  • Capítulo 6 ■ Dicionários
  • Um dicionário simples
  • Trabalhando com dicionários
    • Acessando valores em um dicionário
    • Adicionando novos pares chave-valor
    • Começando com um dicionário vazio
    • Modificando valores em um dicionário
    • Removendo pares chave-valor
    • Um dicionário de objetos parecidos
    • Usando get() para acessar valores
  • Percorrendo um dicionário com um loop
    • Percorrendo todos os pares chave-valor com um loop
    • Percorrendo todas as chaves de um dicionário com um loop
    • Percorrendo todos os valores de um dicionário com um loop
  • Aninhamento
    • Uma lista de dicionários
    • Uma lista em um dicionário
    • Um dicionário em um dicionário
  • Recapitulando
  • Capítulo 7 ■ Entrada do usuário e loops while
  • Como a função input() funciona
    • Escrevendo prompts limpos
    • Usando int() para receber entradas numéricas
    • Operador módulo
  • Apresentando os loops while
    • Usando o loop while
    • Permitindo que o usuário encerre um programa
    • Usando flags
    • Usando o break para sair de um loop
    • Usando continue em um loop
    • Evitando loops infinitos
  • Usando um loop while com listas e dicionários
    • Transferindo elementos de uma lista para outra
    • Removendo todas as instâncias de valores específicos de uma lista
    • Preenchendo um dicionário com entrada do usuário
  • Recapitulando
  • Capítulo 8 ■ Funções
  • Definindo uma função
    • Passando informações para uma função
    • Argumentos e parâmetros
  • Passando argumentos
    • Argumentos posicionais
    • Argumentos nomeados
    • Valores default
    • Chamadas de função equivalentes
    • Evitando erros de argumento
  • Valores de retorno
    • Retornando um valor simples
    • Definindo um argumento como opcional
    • Retornando um dicionário
    • Usando uma função com um loop while
  • Passando uma lista
    • Modificando uma lista em uma função
    • Evitando que uma função modifique uma lista
  • Passando um número arbitrário de argumentos
    • Misturando argumentos posicionais e arbitrários
    • Usando argumentos nomeados arbitrários
  • Armazenando suas funções em módulos
    • Importando um módulo inteiro
    • Importando funções específicas
    • Usando as para atribuir um alias a uma função
    • Usando as para atribuir um alias a um módulo
    • Importando todas as funções em um módulo
  • Estilizando funções
  • Recapitulando
  • Capítulo 9 ■ Classes
  • Criando e usando uma classe
    • Criando a classe Dog
    • Método __init__()
    • Como criar uma instância a partir de uma classe
  • Trabalhando com classes e instâncias
    • Classe Car
    • Definindo um valor default para um atributo
    • Modificando valores de atributos
  • Herança
    • Método __init__() para uma classe-filha
    • Definindo atributos e métodos para a classe-filha
    • Sobrescrevendo métodos a partir da classe-pai
    • Instâncias como atributos
    • Modelando objetos do cotidiano
  • Importando classes
    • Importando uma única classe
    • Armazenando múltiplas classes em um módulo
    • Importando múltiplas classes de um módulo
    • Importando um módulo inteiro
    • Importando todas as classes de um módulo
    • Importando um módulo para um módulo
    • Usando aliases
    • Definindo o próprio fluxo de estudo e de trabalho
  • Biblioteca padrão do Python
  • Estilizando classes
  • Recapitulando
  • Capítulo 10 ■ Arquivos e exceções
  • Lendo um arquivo
    • Lendo o conteúdo de um arquivo
    • Paths relativos e absolutos
    • Acessando as linhas de um arquivo
    • Trabalhando com o conteúdo de um arquivo
    • Arquivos gigantes: um milhão de algarismos
    • Seu aniversário está contido no número Pi?
  • Escrevendo em um arquivo
    • Escrevendo em uma única linha
    • Escrevendo múltiplas linhas
  • Exceções
    • Lidando com a exceção ZeroDivisionError
    • Usando blocos try-except
    • Usando exceções para prevenir falhas
    • Bloco else
    • Lidando com a exceção FileNotFoundError
    • Analisando textos
    • Trabalhando com múltiplos arquivos
    • Falhando sem acusar erros
    • Decidindo quais erros reportar
  • Armazenando dados
    • Usando as funções json dumps() e json loads())
    • Salvando e lendo dados gerados pelo usuário
    • Refatoração
  • Recapitulando
  • Capítulo 11 ■ Testando seu código
  • Instalando o pytest com pip
    • Atualizando o pip
    • Instalando o pytest
  • Testando uma função
    • Testes unitários e casos de teste
    • Um teste que passa
    • Executando um teste
    • Um teste que falha
    • Respondendo a um teste que falhou
    • Adicionando testes novos
  • Testando uma classe
    • Variedade de asserções
    • Uma classe para testar
    • Testando a classe AnonymousSurvey
    • Usando fixtures
  • Recapitulando
    • Projetos
  • Capítulo 12 ■ Uma espaçonave que dispara balas
  • Planejando seu projeto
  • Instalando o Pygame
  • Iniciando o projeto do jogo
    • Criando uma janela Pygame e respondendo à entrada do usuário
    • Controlando a taxa de frame
    • Definindo a cor do background
    • Criando uma classe Settings
  • Adicionando a imagem da espaçonave
    • Criando a classe Ship
    • Desenhando a espaçonave na tela
  • Refatoração: métodos _check_events() e _update_screen()
    • Método _check_events()
    • Método _update_screen()
  • Pilotando a espaçonave
    • Respondendo às teclas pressionadas
    • Movimento contínuo
    • Movimentos à esquerda e à direita
    • Ajustando a velocidade da espaçonave
    • Restringindo o alcance da espaçonave
    • Refatorando o _check_events()
    • Pressionando Q para encerrar o jogo
    • Executando o jogo no modo de tela cheia
  • Breve recapitulação
    • alien_invasion py
    • settings py
    • ship py
  • Disparando balas
    • Adicionando os projéteis
    • Criando a classe Bullet
    • Armazenando projéteis em um grupo
    • Disparando projéteis
    • Deletando projéteis antigos
    • Restringindo o número de projéteis
    • Criando o método _update_bullets()
  • Recapitulando
  • Capítulo 13 ■ Alienígenas!
  • Revisando o projeto
  • Criando o primeiro alienígena
    • Criando a classe Alien
    • Criando uma instância do alienígena
  • Criando a frota alienígena
    • Criando uma fileira de alienígenas
    • Refatorando _create_fleet()
    • Adicionando fileiras
  • Movendo a frota
    • Movendo os alienígenas para a direita
    • Criando configurações para a direção da frota
    • Verificando se um alienígena alcançou a borda
    • Fazendo a frota descer e mudar de direção
  • Disparando contra os alienígenas
    • Detectando colisões de projéteis
    • Criando projéteis maiores para testes
    • Repopulando a frota
    • Criando projéteis mais rápidos
    • Refatorando _update_bullets()
  • Encerrando o jogo
    • Detectando colisões entre espaçonaves e alienígenas
    • Respondendo à colisões entre espaçonaves e alienígenas
    • Alienígenas que alcançam a parte inferior da tela
    • Game Over!
    • Identificando quais partes do jogo devem ser executadas
  • Recapitulando
  • Capítulo 14 ■ Pontuação
  • Adicionando o botão Play
    • Criando uma classe Button
    • Desenhando o botão na tela
    • Iniciando o jogo
    • Reiniciando o jogo
    • Desativando o botão Play
    • Ocultando o cursor do mouse
  • Passando de nível
    • Modificando as configurações de velocidade
    • Redefinindo a velocidade
  • Pontuação
    • Exibindo a pontuação
    • Criando um scoreboard
    • Atualizando a pontuação conforme os alienígenas são abatidos
    • Redefinindo a pontuação
    • Assegurando que todos os ataques sejam pontuados
    • Aumentando os valores dos pontos
    • Arredondando a pontuação
    • Pontuações máximas
    • Exibindo o nível
    • Exibindo a quantidade de espaçonaves
  • Recapitulando
  • Capítulo 15 ■ Gerando dados
  • Instalando a Matplotlib
  • Plotando um simples gráfico de linhas
    • Mudando o tipo de rótulo e a espessura da linha
    • Corrigindo o gráfico
    • Usando estilos built-in
    • Plotando e estilizando pontos individuais com o scatter()
    • Plotando uma série de pontos com scatter()
    • Calculando automaticamente os dados
    • Personalizando a marcação de escala dos rótulos
    • Definindo cores personalizadas
    • Usando um colormap
    • Salvando automaticamente seus gráficos
  • Passeios aleatórios
    • Criando a classe RandomWalk
    • Escolhendo direções
    • Plotando o passeio aleatório
    • Gerando múltiplos passeios aleatórios
    • Estilizando o passeio
  • Lançando dados com o Plotly
    • Instalando o Plotly
    • Criando a classe Die
    • Lançando o dado
    • Analisando os resultados
    • Criando um histograma
    • Personalizando o o gráfico
    • Lançando dois dados
    • Mais personalizações
    • Lançando dados com tamanhos diferentes
    • Salvando os gráficos
  • Recapitulando
  • Capítulo 16 ■ Fazendo download dos dados
  • Formato de arquivo CSV
    • Parseamento dos cabeçalhos dos arquivos CSV
    • Exibindo os cabeçalhos e suas posições
    • Extraindo e lendo os dados
    • Plotando dados em um gráfico de temperatura
    • Módulo datetime
    • Plotando datas
    • Plotando um período de tempo maior
    • Plotando uma segunda série de dados
    • Sombreando uma área no gráfico
    • Verificação de erros
    • Fazendo o download de seus próprios dados
  • Mapeando conjuntos de dados globais: Formato GeoJSON
    • Fazendo o download dos dados de terremotos
    • Examinando Dados GeoJSON
    • Criando uma lista de todos os terremotos
    • Extraindo magnitudes
    • Extraindo os dados de localização
    • Criando um mapa-múndi
    • Representando magnitudes
    • Personalizando as cores das marcações
    • Outras escalas de cores
    • Adicionando texto flutuante
  • Recapitulando
  • Capítulo 17 ■ Trabalhando com APIs
  • Usando uma API
    • Git e GitHub
    • Requisitando dados com uma chamada de API
    • Instalando o pacote Requests
    • Processando uma resposta de API
    • Trabalhando com o dicionário de resposta
    • Resumindo os repositórios mais importantes
    • Monitoramento os limites da taxa de requisições da API
  • Visualizando repositórios com o Plotly
    • Estilizando o gráfico
    • Adicionando tooltips personalizadas
    • Adicionando links clicáveis
    • Personalizando as cores das marcações
    • Mais sobre o Plotly e a API do GitHub
  • API do Hacker News
  • Recapitulando
  • Capítulo 18 ■ Primeiros passos com o Django
  • Criando um projeto
    • Escrevendo uma especificação
    • Criando um ambiente virtual
    • Ativando o ambiente virtual
    • Instalando o Django
    • Criando um projeto no Django
    • Criando o banco de dados
    • Visualizando o projeto
  • Iniciando uma aplicação
    • Definindo modelos
    • Ativando modelos
    • Site admin do Django
    • Definindo o modelo Entry
    • Migrando o modelo Entry
    • Registrando o modelo Entry no site admin
    • Shell do Django
  • Criando páginas: a página inicial do Registro de Aprendizagem
    • Mapeando um URL
    • Escrevendo uma view
    • Escrevendo um template
  • Criando páginas adicionais
    • Herança de template
    • Página de tópicos
    • Páginas com tópicos individuais
  • Recapitulando
  • Capítulo 19 ■ Contas de usuário
  • Permitindo que os usuários forneçam dados
    • Adicionando novos tópicos
    • Adicionando novas entradas
    • Editando as entradas
  • Configurando contas de usuário
    • Aplicação accounts
    • Página de login
    • Fazendo logout
    • Página de cadastro
  • Permitindo que os usuários sejam proprietários de seus dados
    • Restringindo acesso com @login_required
    • Vinculando dados a determinados usuários
    • Restringindo o acesso de tópicos a usuários adequados
    • Protegendo os tópicos de um usuário
    • Protegendo a página edit_entry
    • Associando tópicos novos ao usuário atual
  • Recapitulando
  • Capítulo 20 ■ Estilizando e fazendo o deploy de uma aplicação
  • Estilizando o Registro de Aprendizagem
    • Aplicação django-bootstrap5
    • Bootstrap para estilizar Registro de Aprendizagem
    • Modificando base html
    • Estilizando a página inicial com um Jumbotron
    • Estilizando a página de login
    • Estilizando a página de tópicos
    • Estilizando as entradas na página de tópico
  • Fazendo o deploy do projeto Registro de Aprendizagem
    • Como criar uma conta no Platform sh
    • Instalando a CLI do Platform sh
    • Instalando platformshconfig
    • Criando um arquivo requirements txt
    • Requisitos adicionais de deploy
    • Adicionando arquivos de configuração
    • Modificando settings py para Platform sh
    • Usando o Git para rastrear os arquivos do projeto
    • Criando um projeto no Platform sh
    • Fazendo o push para o Platform sh
    • Visualizando o projeto ativo
    • Refinando a implantação do Platform sh
    • Criando páginas de erro personalizadas
    • Desenvolvimento contínuo
    • Excluindo um projeto no Platform sh
  • Recapitulando
  • Apêndice A ■ Instalação e solução de problemas
  • Python no Windows
    • Usando py em vez de python
    • Executando novamente o instalador
  • Python no macOS
    • Instalando sem querer a versão da Apple do Python
    • Python 2 em versões mais antigas do macOS
  • Python no Linux
    • Usando a instalação padrão do Python
    • Instalando a versão mais recente do Python
  • Verificando qual versão do Python você está usando
  • Palavras reservadas e funções built-in do Python
    • Palavras reservadas do Python
    • Funções built-on do Python
  • Apêndice B ■ Editores de texto e IDEs
  • Programando de maneira eficiente com o VS Code
    • Configurando o VS Code
    • Atalhos do VS Code
  • Outros editores de texto e IDEs
    • IDLE
    • Geany
    • Sublime Text
    • Emacs and Vim
    • PyCharm
    • Jupyter Notebooks
  • Apêndice C ■ Obtendo ajuda
  • Primeiros passos
    • Tente outra vez
    • Faça uma pausa
    • Consulte os recursos deste livro
  • Pesquisando online
    • Stack Overflow
    • Documentação oficial do Python
    • Documentação oficial da biblioteca
    • r/learnpython
    • Postagens em blogs
  • Discord
  • Slack
  • Apêndice D ■ Usando o Git para controle de versões
  • Instalando o Git
    • Configurando o Git
  • Criando um projeto
  • Ignorando arquivos
  • Inicializando um repositório
  • Verificando o status
  • Adicionando arquivos ao repositório
  • Fazendo um commit
  • Verificando o log
  • Segundo commit
  • Revertendo alterações
  • Check out de commits anteriores
  • Excluindo o repositório
  • Apêndice E ■ Solução de problemas para deploy
  • Entendendo os deploys
  • Solução de problemas básicos
    • Siga as sugestões na tela
    • Leia a saída do log
  • Solução de problemas específicos de sistema operacional
    • Deploy a partir do Windows
    • Deploy a partir do macOS
    • Deploy a partir do Linux
  • Outras abordagens de deploy
  • Índice remissivo
Ver sumário completo ▼

Opinião dos leitores

ROGERIO S C R

Excelente livro.

Adan D

Livro excelente!! Boa didática.

Angel A G M

Livro introdutório, porém, abrange um leque bem grande. Excelente para iniciantes.

Gunter C K

O livro é ótimo! EU Já havia comprado a segunda edição e agora comprei a terceira edição.

Ver todas ▼