O documento apresenta uma breve comparação de desempenho entre códigos Pythonicos e não-Pythonicos. O autor realizou testes que mostram que abordagens mais idiomáticas da linguagem Python como uso de list comprehension, slicing e iterar em coleções podem ser mais rápidas do que alternativas como usar loops comuns e métodos como startswith. O documento também fornece referências sobre onde aprender mais sobre desenvolvimento Pythonico.
7. O QUE É
PERFORMANCE?
Realtime
Requisições / segundo
Menor utilização de recursos
Para nossos propósitos, vamos
considerar como medida de
performance apenas o tempo de
resposta.
8. O QUE É SER
PYTHONICO?
PEP8
“Falar” em idioma Python
Legibilidade é importante
Cada linguagem de programação tem
seu “idioma” próprio. Normalmente,
estes idiomas não são uma boa ideia em
outras linguagens.
PEP20
9. ““As pessoas que acham que sabem tudo são
muito irritantes para nós que sabemos.”
Isaac Asimov
12. FOR vs LIST COMPREHENSIONS
100.000 (cem mil) iterações
Código P: 7,97s
Código NP: 12,33s
13. ITERANDO EM UMA COLEÇÃO
10.000.000 (dez milhões) de iterações
Código P: 7,10s
Código NP: 14,21s
14. ITERANDO EM UMA COLEÇÃO, BONUS
10.000.000 (dez milhões) de iterações
Código P: 10,48s
Código NP: 14,32s
15. CONCATENAR STRINGS vs JOIN
10.000.000 (dez milhões) de iterações
Código P: 6,93s
Código NP: 4,26s
16. CONCATENAR STRINGS vs FORMAT
10.000.000 (dez milhões) de iterações
Código P: 4,52s
Código NP: 2,68s
17. ““Esta será a única parte desta apresentação
que você se lembrará no futuro.”
Mawkee
18. Palestras de Jeff Knupp
Palestras de Raymond Hettinger
Palestras e livros de Luciano Ramalho
REFERÊNCIAS
Ou: onde aprender a escrever código pythonico