diff --git a/python.html b/python.html index 4dab0c7..5c358bb 100644 --- a/python.html +++ b/python.html @@ -65,7 +65,13 @@ @@ -73,6 +79,10 @@

O Zen de Python

+ +

Começou em uma brincadeira do Tim Peters (um dos desenvolvedores do Python), + mas acabou virando um PEP (PEP 20) e hoje faz parte da filosofia de desenvolvimento + do Python.

@@ -114,6 +124,129 @@
+
+
+

As Esquisitices de Python

+
+ +
+

PEP8

+
+ +
+
    +
  1. PEPs (Python Enhancement Proposal) são as RFCs que os desenvolvedores + Python utilizam para comunicar novas funcionalidades. + +
  2. Uma funcionalidade não é simplesmente "aceita": É preciso escrever + uma proposta de melhoria explicando o problema encontra e como corrigí-lo. +
  3. +
  4. PEP8 define a melhor forma de se programar em Python.
  5. +
  6. PEP8 não é forçado pelo compilador.
  7. +
  8. PEP8 garante que qualquer programador Python consiga facilmente + encontrar coisas em códigos criados por terceiros.
  9. +
+
+ +
+

Um pouco do PEP8:

+
+ +
+
Variáveis e funções utilizam a notação separado_por_underscores; classes + usam CamelCase.
+ +

Correto:

+


+						MinhaClasse
+
+						minha_funcao()
+						

+ +

Errado:

+


+						minhaClasse
+
+						minhaFuncao()
+						

+
+ +
+
Blocos são marcados com 4 espaços e não tabulações.
+ +

A maior parte dos editores de código hoje permitem configurar isso facilmente + e fazem com que os 4 espaços no começo sejam tratados como tabulação.

+ +

Isso garante que o código irá sempre aparecer da mesma forma em qualquer + editor, não importando a configuração do autor.

+
+ +
+
Coluna máxima é 80.
+ +

Nenhum código deve passar da coluna 80, não importa o tamanho do seu + monitor.

+ +

Facilita a leitura e a movimentação dentro do código.

+
+ +
+
Duas linhas em branco antes de classes, 1 linha em branco antes de funções.
+
+ +
+
Espaços entre operadores (+, -, /, *), nada de espaços antes de parentêses, colchetes ou chaves.
+ +

Correto:

+ +


+						(1 + 2)
+						array[1]
+						

+ +

Errado:

+ +


+						(1+2)
+						( 1 + 2 )
+						array [ 1 ]
+						

+
+ +
+
Nada de espaços entre parâmetros nomeados.
+ +

Correto:

+ +


+						funcao(param=1)
+						

+ +

Errado:

+


+						funcao(param = 1)
+						

+
+ +
+

Blocos

+
+ +
+

Em Python, uma identação define um bloco.

+ +

Não tem { / }, não tem end, nada. Só blocos.

+ + +
+ +
+
+
+

O interpretador Python

@@ -287,14 +420,6 @@ set(['a'])

Blocos

-
-

Em Python, uma identação define um bloco.

- -

Não tem { / }, não tem end, nada. Só blocos.

- - -
-

if [condição]