Python Fluente
Python Fluente é um livro intermediário/avançado sobre a linguagem Python, escrito por Luciano Ramalho.
O texto integral da Segunda Edição em português está em [1].
Conteúdo
O público alvo de Python Fluente é a pessoa que já sabe programar em Python, inclusive profissionalmente, mas deseja se aprofundar nos mecanismos, princípios, e melhores práticas da linguagem. O livro nasceu de um curso presencial chamado "Python para quem sabe Python", que Ramalho apresentou algumas vezes.
Os 24 capítulos estão organizados em cinco partes:
- Estruturas de dados: o modelo de dados de Python, sequências, dicionários, Unicode, mutabilidade etc.
- Funções de primeira classe: assinaturas flexíveis, funções de ordem superior, decoradores etc.
- Orientação a Objetos: métodos especiais, API de coleções, interfaces, protocolos, sobrecarga de operadores etc.
- Controle de fluxo: gerenciadores de contexto, geradores, threads, corrotinas
- Metaprogramação: atributos dinâmicos, propriedades, descritores, decoradores de classes, metaclasses
Na Segunda Edição todos os capítulos foram atualizados do Python 3.4 para o 3.10, mas as novidades mais importantes estão nos capítulos sobre anotações de tipos (capítulos 8 e 15), modelos de concorrência, e programação assíncrona (capítulos 19 e 21).
Para mais detalhes, veja o Sumário e Como ler este livro no Prefácio da Segunda Edição.
Histórico de publicação
Entre 2013 e 2015 Ramalho escreveu em inglês o livro Fluent Python. Boa parte do trabalho foi realizado na sede do Garoa Hacker Clube.
Em 2015 Fluent Python foi publicado nos EUA pela O'Reilly Media em 2015, traduzido e publicado no Brasil como Python Fluente pela Editora Novatec no mesmo ano.
Entre 2020 e 2021, Ramalho atualizou e lançou pela O'Reilly o Fluent Python Second Edition.
Até agosto de 2025, o livro foi publicado em 9 idiomas.
Idiomas da primeira edição
- Chinês simplificado (China)
- Chinês tradicional (Taiwan)
- Coreano
- Francês
- Inglês
- Japonês
- Polonês
- Português brasileiro
- Russo
Idiomas da segunda edição
- Chinês simplificado (China)
- Chinês tradicional (Taiwan)
- Coreano
- Inglês
- Polonês
- Português brasileiro (online: [2]; edição impressa em preparação)
- Russo