@@ -2464,17 +2464,26 @@ msgid ""
24642464"considered true if its result is nonzero. If a class defines neither :meth:"
24652465"`__len__` nor :meth:`__bool__`, all its instances are considered true."
24662466msgstr ""
2467+ "Chamado para implementar o teste de valor de verdade e a operação embutida "
2468+ "``bool()``; deve retornar ``False`` ou ``True``. Quando este método não é "
2469+ "definido, :meth:`__len__` é chamado, se estiver definido, e o objeto é "
2470+ "considerado verdadeiro se seu resultado for diferente de zero. Se uma classe "
2471+ "não define :meth:`__len__` nem :meth:`__bool__`, todas as suas instâncias "
2472+ "são consideradas verdadeiras."
24672473
24682474#: ../../reference/datamodel.rst:1490
24692475msgid "Customizing attribute access"
2470- msgstr ""
2476+ msgstr "Personalizando o acesso aos atributos "
24712477
24722478#: ../../reference/datamodel.rst:1492
24732479msgid ""
24742480"The following methods can be defined to customize the meaning of attribute "
24752481"access (use of, assignment to, or deletion of ``x.name``) for class "
24762482"instances."
24772483msgstr ""
2484+ "Os seguintes métodos podem ser definidos para personalizar o significado do "
2485+ "acesso aos atributos (uso, atribuição ou exclusão de ``x.name``) para "
2486+ "instâncias de classe."
24782487
24792488#: ../../reference/datamodel.rst:1500
24802489msgid ""
@@ -2485,6 +2494,12 @@ msgid ""
24852494"`AttributeError`). This method should either return the (computed) "
24862495"attribute value or raise an :exc:`AttributeError` exception."
24872496msgstr ""
2497+ "Chamado quando o acesso padrão ao atributos falha com um :exc:"
2498+ "`AttributeError` (ou :meth:`__getattribute__` levanta uma :exc:"
2499+ "`AttributeError` porque *name* não é um atributo de instância ou um atributo "
2500+ "na árvore de classes para ``self``; ou :meth:`__get__` de uma propriedade "
2501+ "*name* levanta :exc:`AttributeError`). Este método deve retornar o valor do "
2502+ "atributo (calculado) ou levantar uma exceção :exc:`AttributeError`."
24882503
24892504#: ../../reference/datamodel.rst:1507
24902505msgid ""
@@ -2498,6 +2513,15 @@ msgid ""
24982513"object). See the :meth:`__getattribute__` method below for a way to "
24992514"actually get total control over attribute access."
25002515msgstr ""
2516+ "Observe que se o atributo for encontrado através do mecanismo normal, :meth:"
2517+ "`__getattr__` não é chamado. (Esta é uma assimetria intencional entre :meth:"
2518+ "`__getattr__` e :meth:`__setattr__`.) Isso é feito tanto por razões de "
2519+ "eficiência quanto porque :meth:`__getattr__` não teria como acessar outros "
2520+ "atributos da instância. Observe que pelo menos para variáveis de instâncias, "
2521+ "você pode fingir controle total não inserindo nenhum valor no dicionário de "
2522+ "atributos de instância (mas, em vez disso, inserindo-os em outro objeto). "
2523+ "Veja o método :meth:`__getattribute__` abaixo para uma maneira de realmente "
2524+ "obter controle total sobre o acesso ao atributo."
25012525
25022526#: ../../reference/datamodel.rst:1520
25032527msgid ""
@@ -2510,44 +2534,68 @@ msgid ""
25102534"base class method with the same name to access any attributes it needs, for "
25112535"example, ``object.__getattribute__(self, name)``."
25122536msgstr ""
2537+ "Chamado incondicionalmente para implementar acessos a atributo para "
2538+ "instâncias da classe. Se a classe também define :meth:`__getattr__`, o "
2539+ "último não será chamado a menos que :meth:`__getattribute__` o chame "
2540+ "explicitamente ou levante um :exc:`AttributeError`. Este método deve "
2541+ "retornar o valor do atributo (calculado) ou levantar uma exceção :exc:"
2542+ "`AttributeError`. Para evitar recursão infinita neste método, sua "
2543+ "implementação deve sempre chamar o método da classe base com o mesmo nome "
2544+ "para acessar quaisquer atributos de que necessita, por exemplo, ``object."
2545+ "__getattribute__(self, name)``."
25132546
25142547#: ../../reference/datamodel.rst:1531
25152548msgid ""
25162549"This method may still be bypassed when looking up special methods as the "
25172550"result of implicit invocation via language syntax or built-in functions. "
25182551"See :ref:`special-lookup`."
25192552msgstr ""
2553+ "Este método ainda pode ser ignorado ao procurar métodos especiais como "
2554+ "resultado de invocação implícita por meio da sintaxe da linguagem ou funções "
2555+ "embutidas. Consulte :ref:`special-lookup`."
25202556
25212557#: ../../reference/datamodel.rst:1538
25222558msgid ""
25232559"Called when an attribute assignment is attempted. This is called instead of "
25242560"the normal mechanism (i.e. store the value in the instance dictionary). "
25252561"*name* is the attribute name, *value* is the value to be assigned to it."
25262562msgstr ""
2563+ "Chamado quando uma atribuição de atributo é tentada. Isso é chamado em vez "
2564+ "do mecanismo normal (ou seja, armazena o valor no dicionário da instância). "
2565+ "*name* é o nome do atributo, *value* é o valor a ser atribuído a ele."
25272566
25282567#: ../../reference/datamodel.rst:1542
25292568msgid ""
25302569"If :meth:`__setattr__` wants to assign to an instance attribute, it should "
25312570"call the base class method with the same name, for example, ``object."
25322571"__setattr__(self, name, value)``."
25332572msgstr ""
2573+ "Se :meth:`__setattr__` deseja atribuir a um atributo de instância, ele deve "
2574+ "chamar o método da classe base com o mesmo nome, por exemplo, ``object."
2575+ "__setattr__(self, name, value)``."
25342576
25352577#: ../../reference/datamodel.rst:1549
25362578msgid ""
25372579"Like :meth:`__setattr__` but for attribute deletion instead of assignment. "
25382580"This should only be implemented if ``del obj.name`` is meaningful for the "
25392581"object."
25402582msgstr ""
2583+ "Como :meth:`__setattr__`, mas para exclusão de atributo em vez de "
2584+ "atribuição. Isso só deve ser implementado se ``del obj.name`` for "
2585+ "significativo para o objeto."
25412586
25422587#: ../../reference/datamodel.rst:1555
25432588msgid ""
25442589"Called when :func:`dir` is called on the object. A sequence must be "
25452590"returned. :func:`dir` converts the returned sequence to a list and sorts it."
25462591msgstr ""
2592+ "Chamado quando :func:`dir` é chamado no objeto. Uma sequência deve ser "
2593+ "retornada. :func:`dir` converte a sequência retornada em uma lista e a "
2594+ "ordena."
25472595
25482596#: ../../reference/datamodel.rst:1560
25492597msgid "Customizing module attribute access"
2550- msgstr ""
2598+ msgstr "Personalizando acesso a atributos de módulos "
25512599
25522600#: ../../reference/datamodel.rst:1567
25532601msgid ""
@@ -2560,20 +2608,36 @@ msgid ""
25602608"``__dict__`` before raising an :exc:`AttributeError`. If found, it is called "
25612609"with the attribute name and the result is returned."
25622610msgstr ""
2611+ "Os nomes especiais ``__getattr__`` e ``__dir__`` também podem ser usados "
2612+ "para personalizar o acesso aos atributos dos módulos. A função "
2613+ "``__getattr__`` no nível do módulo deve aceitar um argumento que é o nome de "
2614+ "um atributo e retornar o valor calculado ou levantar um :exc:"
2615+ "`AttributeError`. Se um atributo não for encontrado em um objeto de módulo "
2616+ "por meio da pesquisa normal, por exemplo :meth:`object.__getattribute__`, "
2617+ "então ``__getattr__`` é pesquisado no módulo ``__dict__`` antes de levantar "
2618+ "um :exc:`AttributeError` . Se encontrado, ele é chamado com o nome do "
2619+ "atributo e o resultado é retornado."
25632620
25642621#: ../../reference/datamodel.rst:1576
25652622msgid ""
25662623"The ``__dir__`` function should accept no arguments, and return a sequence "
25672624"of strings that represents the names accessible on module. If present, this "
25682625"function overrides the standard :func:`dir` search on a module."
25692626msgstr ""
2627+ "A função ``__dir__`` não deve aceitar nenhum argumento e retornar uma "
2628+ "sequência de strings que representa os nomes acessíveis no módulo. Se "
2629+ "presente, esta função substitui a pesquisa padrão :func:`dir` em um módulo."
25702630
25712631#: ../../reference/datamodel.rst:1580
25722632msgid ""
25732633"For a more fine grained customization of the module behavior (setting "
25742634"attributes, properties, etc.), one can set the ``__class__`` attribute of a "
25752635"module object to a subclass of :class:`types.ModuleType`. For example::"
25762636msgstr ""
2637+ "Para uma personalização mais refinada do comportamento do módulo (definição "
2638+ "de atributos, propriedades etc.), pode-se definir o atributo ``__class__`` "
2639+ "de um objeto de módulo para uma subclasse de :class:`types.ModuleType`. Por "
2640+ "exemplo::"
25772641
25782642#: ../../reference/datamodel.rst:1598
25792643msgid ""
@@ -2582,26 +2646,30 @@ msgid ""
25822646"module globals (whether by code within the module, or via a reference to the "
25832647"module's globals dictionary) is unaffected."
25842648msgstr ""
2649+ "Definir o módulo ``__getattr__`` e configurar o módulo ``__class__`` só "
2650+ "afeta as pesquisas feitas usando a sintaxe de acesso ao atributo -- acessar "
2651+ "diretamente os globais do módulo (seja por código dentro do módulo, ou por "
2652+ "meio de uma referência ao dicionário global do módulo) é não afetado."
25852653
25862654#: ../../reference/datamodel.rst:1603
25872655msgid "``__class__`` module attribute is now writable."
2588- msgstr ""
2656+ msgstr "O atributo de módulo ``__class__`` pode agora ser escrito. "
25892657
25902658#: ../../reference/datamodel.rst:1606
25912659msgid "``__getattr__`` and ``__dir__`` module attributes."
2592- msgstr ""
2660+ msgstr "Atributos de módulo ``__getattr__`` e ``__dir__``. "
25932661
25942662#: ../../reference/datamodel.rst:1611
25952663msgid ":pep:`562` - Module __getattr__ and __dir__"
2596- msgstr ""
2664+ msgstr ":pep:`562` - __getattr__ e __dir__ de módulo "
25972665
25982666#: ../../reference/datamodel.rst:1612
25992667msgid "Describes the ``__getattr__`` and ``__dir__`` functions on modules."
2600- msgstr ""
2668+ msgstr "Descreve as funções ``__getattr__`` e ``__dir__`` nos módulos. "
26012669
26022670#: ../../reference/datamodel.rst:1618
26032671msgid "Implementing Descriptors"
2604- msgstr ""
2672+ msgstr "Implementando descritores "
26052673
26062674#: ../../reference/datamodel.rst:1620
26072675msgid ""
@@ -2612,6 +2680,12 @@ msgid ""
26122680"\" refers to the attribute whose name is the key of the property in the "
26132681"owner class' :attr:`~object.__dict__`."
26142682msgstr ""
2683+ "Os métodos a seguir se aplicam apenas quando uma instância da classe que "
2684+ "contém o método (uma classe chamada *descritora*) aparece em uma classe "
2685+ "proprietária *owner* (o descritor deve estar no dicionário de classe do "
2686+ "proprietário ou no dicionário de classe para um dos seus pais). Nos exemplos "
2687+ "abaixo, \" o atributo\" refere-se ao atributo cujo nome é a chave da "
2688+ "propriedade no :attr:`~object.__dict__` da classe proprietária."
26152689
26162690#: ../../reference/datamodel.rst:1630
26172691msgid ""
0 commit comments