@@ -308,7 +308,10 @@ após ser exaurido. Para recomeçar, é necessário reconstruir o iterador,
308308invocando novamente `iter()`.
309309
310310A https://docs.python.org/pt-br/3.10/library/functions.html#iter[documentação de
311- `iter`] inclui a seguinte explicação e código de exemplo:
311+ `iter`] inclui a seguinte explicação e código de exemplo:footnote:[NT:
312+ Mudei um pouco a tradução, e
313+ https://github.com/python/python-docs-pt-br/issues/290[«sugeri a melhoria»] no
314+ repositório oficial da tradução PT-BR da documentação do Python.]
312315
313316[quote]
314317____
@@ -330,7 +333,7 @@ with open('mydata.db', 'rb') as f:
330333 process_block(block)
331334----
332335
333- Para deixar o código mais claro , adicionei a atribuição `read_block`, que não está no
336+ Para deixar o código mais fácil de ler , adicionei a atribuição `read_block`, que não está no
334337https://docs.python.org/pt-br/3.10/library/functions.html#iter[«exemplo original»].
335338A função `partial()` é necessária porque o invocável passado a
336339`iter()` não pode requerer argumentos. No exemplo, um objeto `bytes` vazio é a
@@ -469,10 +472,10 @@ O código-fonte do módulo https://fpy.li/17-6[_Lib/types.py_] no Python 3.9 tem
469472um comentário dizendo:
470473
471474----
472- # Iteradores no Python não são uma questão de tipo, mas sim de protocolo. Um número
473- # grande e variável de tipos embutidos implementa *alguma* forma de
474- # iterador. Não verifique o tipo! Em vez disso, use `hasattr` para
475- # checar [a existência] de ambos os atributos "__iter__" e "__next__".
475+ # Iteradores no Python não são uma questão de tipo, mas sim de protocolo.
476+ # Um número grande e variável de tipos embutidos implementa *alguma* forma
477+ # de iterador. Não verifique o tipo! Em vez disso, use `hasattr` para
478+ # detectar os atributos "__iter__" e "__next__".
476479----
477480
478481E de fato, é exatamente o que o método `+__subclasshook__+` da ABC
@@ -853,12 +856,18 @@ virtude, pelo menos em linguagens de programação e APIs. Uma implementação
853856preguiçosa adia a produção de valores até o último momento possível. Isso
854857economiza memória e também pode evitar o desperdício de ciclos de CPU.
855858
856- Vamos criar a seguir classes `Sentence` preguiçosas.((("", startref="ITsentence17")))((("", startref="iter17")))((("", startref="sentclass17")))((("", startref="genex17")))((("", startref="yielda17")))((("", startref="Kyielda17")))
859+ A seguir, criaremos classes `Sentence` preguiçosas.((("",
860+ startref="ITsentence17")))((("", startref="iter17")))((("",
861+ startref="sentclass17")))((("", startref="genex17")))((("",
862+ startref="yielda17")))((("", startref="Kyielda17")))
857863
858864
859865=== Sentenças preguiçosas
860866
861- As((("iterators", "lazy sentences", id="Ilazy17")))((("generators", "lazy generators", id="Glazy17")))((("lazy sentences", id="lazysen17"))) últimas variações de `Sentence` são preguiçosas, se valendo de um função preguiçosa do módulo `re`.
867+ As((("iterators", "lazy sentences", id="Ilazy17")))((("generators",
868+ "lazy generators", id="Glazy17")))((("lazy sentences", id="lazysen17")))
869+ últimas variações de `Sentence` são preguiçosas, valendo-se de um
870+ função geradora do módulo `re`.
862871
863872
864873==== Sentence versão #4: um gerador preguiçoso
0 commit comments