Introdução à Programação com Python - 4ª Edição

Algoritmos e lógica de programação para iniciantes

Introdução à Programação com Python - 4ª Edição
× Introdução à Programação com Python - 4ª Edição

Introdução à Programação com Python - 4ª Edição

Autor: Nilo Ney Coutinho Menezes

ISBN impresso: 978-85-7522-886-9
Ano: 2024
Páginas: 552
Preço: R$ 129,00

2 opiniões | Opine sobre este livro

Descrição do livro

Este livro se destina ao iniciante em programação e foi escrito para ajudar o leitor autodidata a aprender a programar. Também pode ser utilizado em cursos de introdução à computação e mesmo em cursos mais avançados, nos quais o domínio das técnicas básicas de programação e da linguagem Python sejam requeridos.

Aborda os conceitos básicos de programação, como expressões, variáveis, repetições, decisões, listas, dicionários, conjuntos, funções, arquivos, classes, objetos, SQL, banco de dados (SQLite 3), expressões regulares e interfaces gráficas com Tkinter, com exemplos e exercícios. Conceitos matemáticos necessários à programação são incluídos para facilitar a compreensão dos exercícios. Recursos mais avançados da computação são mencionados, permitindo ao leitor continuar a aprender conceitos mais complexos em outros textos.

Embora o livro pretenda ensinar a linguagem Python (versão 3.12 ou superior), a prioridade maior é ensinar a programar, com muitos exercícios de lógica de programação, fornecendo uma preparação mais ampla ao leitor, independente de linguagem. O objetivo é mostrar os conceitos, muitas vezes sem usar todos os recursos modernos e poderosos do Python. No fim de cada capítulo são apresentados códigos que usam progressivamente cada vez mais os recursos de Python.

O site que acompanha o livro traz vídeos, listagens, exercícios resolvidos e dúvidas frequentes, que podem ser utilizados como material suplementar. O software utilizado no livro pode ser baixado gratuitamente, sendo compatível com Windows, Linux e Mac OS X.

Ver menos ▲

Sumário

  • Agradecimentos
  • Prefácio da quarta edição
  • Prefácio da terceira edição
  • Prefácio da segunda edição
  • Prefácio da primeira edição
  • Introdução
    • Motivação
  • 1.1 Você quer aprender a programar?
  • 1.2 Como está seu nível de paciência?
  • 1.3 Quanto tempo você pretende estudar?
  • 1.4 Programar para quê?
    • 1.4.1 Escrever páginas web
    • 1.4.2 Acertar seu relógio
    • 1.4.3 Aprender a usar mapas
    • 1.4.4 Mostrar para seus amigos que você sabe programar
    • 1.4.5 Parecer estranho
    • 1.4.6 Entender melhor como seu computador funciona
    • 1.4.7 Cozinhar
    • 1.4.8 Salvar o mundo
    • 1.4.9 Software livre
    • 1.4.10 Ficar rico
  • 1.5 O que fazer caso você não saiba resolver algo?
  • 1.6 Como pedir ajuda
    • 1.6.1 Erros comuns ao tentar aprender a programar
    • 1.6.2 Quando você terá aprendido?
    • 1.6.3 O que é realmente importante?
    • 1.6.4 O que evitar?
  • 1.7 Por que Python?
    • Preparando o ambiente
  • 2.1 Instalação do Python
    • 2.1.1 Instalação no Windows
    • 2.1.2 Instalação no Linux
    • 2.1.3 Instalação no Mac OS X
  • 2.2 Usando o interpretador Python
  • 2.3 Editando arquivos
  • 2.4 Visual Studio Code
  • 2.5 Cuidados ao digitar seus programas
  • 2.6 Primeiros programas
  • 2.7 Conceitos de variáveis e atribuição
  • 2.8 Uma rápida revisão de conceitos matemáticos
    • 2.8.1 Números
    • 2.8.2 Propriedades da adição e da subtração
    • 2.8.3 Propriedades da divisão
    • 2.8.4 Propriedades da multiplicação
    • 2.8.5 Propriedades do resto
    • 2.8.6 Regra de 3 e proporção
    • 2.8.7 Porcentagem
    • 2.8.8 Média aritmética
    • 2.8.9 Média ponderada
      • Variáveis e entrada de dados
  • 3.1 Nomes de variáveis
  • 3.2 Variáveis numéricas
    • 3.2.1 Representação de valores numéricos
  • 3.3 Variáveis do tipo Lógico
    • 3.3.1 Operadores relacionais
    • 3.3.2 Operadores lógicos
  • 3.4 Variáveis string
    • 3.4.1 Operações com strings
  • 3.5 Sequências e tempo
  • 3.6 Rastreamento
  • 3.7 Entrada de dados
    • 3.7.1 Conversão da entrada de dados
    • 3.7.2 Erros comuns
      • Condições
  • 4.1 if
  • 4.2 else
  • 4.3 Estruturas aninhadas
  • 4.4 elif
  • 4.5 Inversão de condições
  • 4.6 Cuidados ao comparar valores
    • Repetições
  • 5.1 Contadores
  • 5.2 Acumuladores
    • 5.2.1 Instruções de atribuição especiais
  • 5.3 Interrompendo a repetição
  • 5.4 Repetições aninhadas
  • 5.5 F-Strings
    • Listas, dicionários, tuplas e conjuntos
  • 6.1 Trabalhando com índices
  • 6.2 Cópia e fatiamento de listas
  • 6.3 Tamanho de listas
  • 6.4 Adição de elementos
  • 6.5 Remoção de elementos da lista
  • 6.6 Usando listas como filas
  • 6.7 Uso de listas como pilhas
  • 6.8 Pesquisa
  • 6.9 Usando for
  • 6.10 Range
  • 6.11 Enumerate
  • 6.12 Operações com listas
  • 6.13 Aplicações
  • 6.14 Listas com strings
  • 6.15 Listas dentro de listas
  • 6.16 Ordenação
  • 6.17 Dicionários
  • 6.18 Dicionários com listas
  • 6.19 Dicionários com valor padrão
  • 6.20 Tuplas
  • 6.21 Conjuntos (set)
    • 6.21.1 União
    • 6.21.2 Intersecção
    • 6.21.3 Diferença
    • 6.21.4 Diferença simétrica
    • 6.21.5 Outras operações
    • 6.21.6 Quando usar conjuntos
  • 6.22 Qual estrutura de dados utilizar?
    • Trabalhando com strings
  • 7.1 Verificação parcial de strings
  • 7.2 Contagem
  • 7.3 Pesquisa de strings
  • 7.4 Posicionamento de strings
  • 7.5 Quebra ou separação de strings
  • 7.6 Substituição de strings
  • 7.7 Remoção de espaços em branco
  • 7.8 Validação por tipo de conteúdo
  • 7.9 Formatação de strings
    • 7.9.1 Formatação de números
  • 7.10 Jogo da forca
    • Funções
  • 8.1 Variáveis locais e globais
  • 8.2 Funções recursivas
  • 8.3 Validação
  • 8.4 Parâmetros opcionais
  • 8.5 Nomeando parâmetros
  • 8.6 Funções como parâmetro
  • 8.7 Empacotamento e desempacotamento de parâmetros
  • 8.8 Desempacotamento de parâmetros
  • 8.9 Funções Lambda
  • 8.10 Exceções
  • 8.11 Módulos
  • 8.12 Números aleatórios
  • 8.13 Função type
  • 8.14 List Comprehensions
  • 8.15 Geradores
  • 8.16 Generator Comprehensions
  • 8.17 Dict Comprehensions
  • 8.18 Set Comprehensions
  • 8.19 Map e Zip
  • 8.20 Reduce
  • 8.21 Filter
  • 8.22 Aplicação parcial de funções
  • 8.23 Funções matemáticas
    • 8.23.1 Operador Walrus (Morsa)
      • Arquivos
  • 9.1 Abrindo arquivos
  • 9.2 A linha de comando
  • 9.3 Comandos básicos no Windows
  • 9.4 Comandos básicos no Linux
  • 9.5 Parâmetros da linha de comando
  • 9.6 Geração de arquivos
  • 9.7 Leitura e escrita
  • 9.8 Processamento de um arquivo
  • 9.9 Geração de HTML
  • 9.10 Arquivos e diretórios
  • 9.11 Um pouco sobre o tempo
  • 9.12 Uso de caminhos
  • 9.13 Pathlib
  • 9.14 Visita a todos os subdiretórios recursivamente
  • 9.15 Data e hora
    • 9.15.1 Fusos horários
  • 9.16 Arquivos JSON
  • 9.17 Arquivos binários
    • Classes e objetos
  • 10.1 Antes dos objetos
  • 10.2 Objetos como representação do mundo real
  • 10.3 Passagem de parâmetros
  • 10.4 Exemplo de um banco
  • 10.5 Herança
  • 10.6 Desenvolvendo uma classe para controlar listas
  • 10.7 Atributos e métodos de classe
  • 10.8 Revisitando a agenda
  • 10.9 Criando exceções
    • Banco de dados
  • 11.1 Conceitos básicos
  • 11.2 SQL
  • 11.3 Python & SQLite
  • 11.4 Consultando registros
  • 11.5 Atualizando registros
  • 11.6 Apagando registros
  • 11.7 Simplificando o acesso sem cursores
  • 11.8 Acessando os campos como em um dicionário
  • 11.9 Gerando uma chave primária
  • 11.10 Alterando a tabela
  • 11.11 Agrupando dados
  • 11.12 Trabalhando com datas
  • 11.13 Chaves e relações
  • 11.14 Convertendo a agenda para utilizar um banco de dados
    • Padrões
  • 12.1 Reconhecimento de padrões
  • 12.2 Expressões Regulares
    • 12.2.1 Encontrando sequências
    • 12.2.2 Captura gulosa
    • 12.2.3 Compilando expressões regulares
    • 12.2.4 Capturando vários grupos e subgrupos
    • 12.2.5 Onde usar
  • 12.3 Casamento estrutural de padrões
    • Interface gráfica
  • 13.1 Um primeiro programa
  • 13.2 Contando cliques
  • 13.3 Usando classes
  • 13.4 Adicionando contadores
  • 13.5 Entrando dados
  • 13.6 Desenhando
    • 13.6.1 Desenhando um cursor com linhas
    • 13.6.2 Desenhando linhas
    • 13.6.3 Mais ferramentas
    • 13.6.4 Limpando e desfazendo
    • 13.6.5 Cores
  • 13.7 Um cadastro de sites
    • 13.7.1 Classe Site
    • 13.7.2 A tela inicial
    • 13.7.3 A tela de detalhes
    • 13.7.5 Integrando o programa
    • 13.7.6 Completando o aplicativo
      • Próximos passos
  • 14.1 Programação funcional
  • 14.2 Algoritmos
  • 14.3 Jogos
  • 14.4 Orientação a objetos
  • 14.5 Banco de dados
  • 14.6 Sistemas web
  • 14.7 Ciência de dados e inteligência artificial
  • 14.8 Outras bibliotecas Python
  • 14.9 Listas de discussão
    • Mensagens de erro
  • A 1 SyntaxError
  • A 2 IdentationError
  • A 3 KeyError
  • A 4 NameError
  • A 5 ValueError
  • A 6 TypeError
  • A 7 IndexError
  • A 8 TabError
    • Adaptações para outras versões do Python
  • B 1 Python 2.7
  • B 2 Python 3.5 e anteriores
  • B 3 Python 3.8 e anteriores
  • B 4 Python 3.10 ou anteriores
    • Operadores bit a bit
  • C 1 Deslocamentos
  • C 2 Operadores bit a bit
  • Referências
  • Índice remissivo
Ver sumário completo ▼

Sobre o autor

Nilo Ney Coutinho Menezes

Nilo Ney Coutinho Menezes é desenvolvedor de software, especializado em programação paralela, assíncrona e de sistemas distribuídos. Em 2020, recebeu o título de Python Software Foundation Fellow por contribuições à divulgação da linguagem e criação de comunidades. Atuou como pesquisador em diversos projetos europeus nas áreas de simulação,… Ver perfil completo ▶

Opinião dos leitores

Antônio M da S

Excelente livro. Sugestão: Lançar livros orientados a projetos de sistema de gestão.

Vicente E R M

Livro excelente, aborda do básico ao intermediário dando uma contribuição fantástica para quem está começando na linguagem Python como sendo um excelente guia de referência para quem já tem alguma experiência.

Ver todas ▼

Títulos relacionados