Introdução à Programação com Python - 3ª Edição
Algoritmos e lógica de programação para iniciantes
Descrição do livro
Este livro é orientado ao iniciante em programação. 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 e banco de dados com SQLite 3 são apresentados um a um com exemplos e exercícios. A obra visa a explorar a programação de computadores como ferramenta do dia a dia. Ela pode ser lida durante um curso de introdução à programação de computadores e usada como guia de estudo para autodidatas. Para aproveitamento pleno do conteúdo, apenas conhecimentos básicos de informática, como digitar textos, abrir e salvar arquivos, são suficientes. Todo software utilizado no livro pode ser baixado gratuitamente, sendo executado em Windows, Linux e Mac OS X.
Embora a linguagem Python (versão +3.7) seja muito poderosa e repleta de recursos modernos de programação, este livro não pretende ensinar a linguagem em si, mas ensinar a programar. Alguns recursos da linguagem não foram utilizados para privilegiar os exercícios de lógica de programação e oferecer uma preparação mais ampla ao leitor para outras linguagens. Essa escolha não impediu a apresentação de recursos poderosos da linguagem, e, embora o livro não seja fundamentalmente uma obra de referência, o leitor encontrará várias notas e explicações de características específicas do Python, além da lógica de programação.
Ver menos ▲Sumário
- Agradecimentos
- 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.5 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 Cuidados ao digitar seus programas
- 2.5 Primeiros programas
- 2.6 Conceitos de variáveis e atribuição
- 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
- Repetições
- 5.1 Contadores
- 5.2 Acumuladores
- 5.2.1 Operadores 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.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
- Arquivos
- 9.1 Parâmetros da linha de comando
- 9.2 Geração de arquivos
- 9.3 Leitura e escrita
- 9.4 Processamento de um arquivo
- 9.5 Geração de HTML
- 9.6 Arquivos e diretórios
- 9.7 Um pouco sobre o tempo
- 9.8 Uso de caminhos
- 9.9 Visita a todos os subdiretórios recursivamente
- 9.10 Data e hora
- Classes e objetos
- 10.1 Objetos como representação do mundo real
- 10.2 Passagem de parâmetros
- 10.3 Exemplo de um banco
- 10.4 Herança
- 10.5 Desenvolvendo uma classe para controlar listas
- 10.6 Revisitando a agenda
- 10.7 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
- Próximos passos
- 12.1 Programação funcional
- 12.2 Algoritmos
- 12.3 Jogos
- 12.4 Orientação a objetos
- 12.5 Banco de dados
- 12.6 Sistemas web
- 12.7 Ciência de dados e inteligência artificial
- 12.8 Outras bibliotecas Python
- 12.8 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 ou anterior
- Referências
- Índice remissivo
Sobre o autor
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 ▶
Livros relacionados
Opinião dos leitores
Carlos A D
Excelente livro! Aborda todos os recursos da linguagem de forma clara e didática.
Tadeu G Y
Muito Didático!!
Daniela C M
O livro segue o programa do Curso de Programação de Computadores na mesma ordem de apresentação dos assuntos. Tem um bom texto e exemplos esclarecedores e bem explicados, e principalmente exercícios para serem praticados.
Alexandre Da S N
Muito bom Bem didatico, esta sendo de grande Utilidade no meu trabalho






