@@ -2665,6 +2665,8 @@ msgid ""
26652665"The ``is`` operator tests for object identity. The test ``a is b`` is "
26662666"equivalent to ``id(a) == id(b)``."
26672667msgstr ""
2668+ "O operador ``is`` testa a identidade do objeto. O teste ``a is b`` equivale "
2669+ "a ``id(a) == id(b)`` ."
26682670
26692671#: ../../faq/programming.rst:1822
26702672msgid ""
@@ -2673,33 +2675,49 @@ msgid ""
26732675"usually faster than equality tests. And unlike equality tests, identity "
26742676"tests are guaranteed to return a boolean ``True`` or ``False``."
26752677msgstr ""
2678+ "A propriedade mais importante de um teste de identidade é que um objeto é "
2679+ "sempre idêntico a si mesmo, ``a is a`` sempre retorna ``True``. Testes de "
2680+ "identidade são geralmente mais rápidos do que os testes de igualdade. E, ao "
2681+ "contrário dos testes de igualdade, teste de identidade garante que retorno "
2682+ "seja um booleano ``True`` ou ``False``."
26762683
26772684#: ../../faq/programming.rst:1827
26782685msgid ""
26792686"However, identity tests can *only* be substituted for equality tests when "
26802687"object identity is assured. Generally, there are three circumstances where "
26812688"identity is guaranteed:"
26822689msgstr ""
2690+ "Entretanto, o teste de identidade *somente* pode ser substituído por testes "
2691+ "de igualdade quando a identidade do objeto é garantida. Em geral, há três "
2692+ "circunstâncias em que a identidade é garantida:"
26832693
26842694#: ../../faq/programming.rst:1831
26852695msgid ""
26862696"1) Assignments create new names but do not change object identity. After "
26872697"the assignment ``new = old``, it is guaranteed that ``new is old``."
26882698msgstr ""
2699+ "1) Atribuições criam novos nomes, mas não alteram a identidade do objeto. "
2700+ "Após a atribuição ``new = old`` , é garantido que ``new is old``."
26892701
26902702#: ../../faq/programming.rst:1834
26912703msgid ""
26922704"2) Putting an object in a container that stores object references does not "
26932705"change object identity. After the list assignment ``s[0] = x``, it is "
26942706"guaranteed that ``s[0] is x``."
26952707msgstr ""
2708+ "2) Colocar um objeto em um contêiner que armazena referências de objetos não "
2709+ "altera a identidade do objeto. Após a lista atribuição ``s[0] = x`` , é "
2710+ "garantido que ``s[0] is x``."
26962711
26972712#: ../../faq/programming.rst:1838
26982713msgid ""
26992714"3) If an object is a singleton, it means that only one instance of that "
27002715"object can exist. After the assignments ``a = None`` and ``b = None``, it "
27012716"is guaranteed that ``a is b`` because ``None`` is a singleton."
27022717msgstr ""
2718+ "3) Se um objeto for um Singleton, isso significa que só pode existir um "
2719+ "instância desse objeto. Depois de atribuição ``a = None`` e ``b = None``, é "
2720+ "garantido que ``a is b`` porque ``None`` é um Singleton."
27032721
27042722#: ../../faq/programming.rst:1842
27052723msgid ""
@@ -2708,6 +2726,10 @@ msgid ""
27082726"check constants such as :class:`int` and :class:`str` which aren't "
27092727"guaranteed to be singletons::"
27102728msgstr ""
2729+ "Na maioria das outras circunstâncias, o teste de identidade é "
2730+ "desaconselhável e os testes de igualdade são preferíveis. Em particular, "
2731+ "teste de identidade não deve ser usado para verificar constantes, como :"
2732+ "class:`int` e :class:`str`, que não têm garantia de serem Singletons::"
27112733
27122734#: ../../faq/programming.rst:1859
27132735msgid "Likewise, new instances of mutable containers are never identical::"
@@ -2720,6 +2742,8 @@ msgid ""
27202742"In the standard library code, you will see several common patterns for "
27212743"correctly using identity tests:"
27222744msgstr ""
2745+ "No código da biblioteca padrão, você encontrará vários padrões comuns para "
2746+ "usar corretamente o teste de identidade:"
27232747
27242748#: ../../faq/programming.rst:1869
27252749msgid ""
@@ -2728,6 +2752,10 @@ msgid ""
27282752"confusion with other objects that may have boolean values that evaluate to "
27292753"false."
27302754msgstr ""
2755+ "1) Conforme recomendado por :pep:`8`, um teste de identidade é a maneira "
2756+ "preferida de verificar ``None``. Isso é lido como se fosse inglês simples "
2757+ "no código e evita confusão com outros objetos que podem ter valor booleano "
2758+ "avaliado para falso."
27312759
27322760#: ../../faq/programming.rst:1873
27332761msgid ""
@@ -2736,13 +2764,21 @@ msgid ""
27362764"guaranteed to be distinct from other objects. For example, here is how to "
27372765"implement a method that behaves like :meth:`dict.pop`::"
27382766msgstr ""
2767+ "2) A detecção de argumento opcional pode ser complicada quando ``None`` é "
2768+ "uma valor de entrada válido. Nessas situações, você pode criar um objeto "
2769+ "Singleton sinalizador com garantia de ser distinto de outros objetos. Por "
2770+ "exemplo, veja como implementar um método que se comporta como :meth:`dict."
2771+ "pop`::"
27392772
27402773#: ../../faq/programming.rst:1889
27412774msgid ""
27422775"3) Container implementations sometimes need to augment equality tests with "
27432776"identity tests. This prevents the code from being confused by objects such "
27442777"as ``float('NaN')`` that are not equal to themselves."
27452778msgstr ""
2779+ "3) Implementações de contêiner às vezes precisam combinar testes de "
2780+ "igualdade com testes de identidade. Isso evita que o código seja confundido "
2781+ "por objetos como ``float('NaN')`` que não são iguais a si mesmos."
27462782
27472783#: ../../faq/programming.rst:1893
27482784msgid ""
0 commit comments