Pitão

Função Python getattr ()

Função Python getattr ()

A grande variedade de módulos, funções e instruções integradas ao Python ajudam os programadores a realizar várias tarefas. A função getattr () é uma função embutida do Python que permite que os programadores acessem o valor do atributo de um objeto. Se o valor não for encontrado, a função getattar () retorna o valor padrão. Esta é a razão pela qual a função getattr () é usada principalmente para acessar os valores de atributo dos objetos. Este artigo fornecerá uma explicação detalhada da função getattr () com alguns exemplos.

Sintaxe

Antes de passar para a implementação da função getattr (), primeiro, discutiremos sua sintaxe. A sintaxe da função getattr () é a seguinte:

getattr (object_name, attribute_name, defalut_value)

A função getattr () usa três parâmetros como argumento:
object_name: O nome do objeto cujo atributo precisamos acessar.
Nome do Atributo: O nome do atributo que precisamos acessar.
valor padrão: O valor padrão que é retornado quando o atributo não é encontrado.

Se o atributo name não for encontrado e não definirmos o default_value, a função getattar () gerará uma exceção AttributeError.

Exemplos

Agora, veremos alguns exemplos usando a função getattr (). Criamos uma classe de aluno e definimos alguns atributos para esta classe. Estamos acessando esses atributos usando a função getattar ().

#creating a student class
classe Aluno:
#defining name attribute
nome = "John"
#defining an email attribute
email = "[email protegido]"
#Creating a student class object
std_obj = Aluno ()
#now std_obj é nosso objeto
#accessing the name attribute
print ("O valor do atributo name é:", getattr (std_obj, 'name'))
#accessing the email attribute
print ("O valor do atributo de email é:", getattr (std_obj, 'email'))

Resultado

A função getattr () retornou os valores do atributo com sucesso.

Agora, vamos tentar acessar um atributo que não está definido. Vamos definir o valor padrão para este atributo ausente.

#creating a student class
classe Aluno:
#defining name attribute
nome = "John"
#defining an email attribute
email = "[email protegido]"
#Creating a student class object
std_obj = Aluno ()
#now std_obj é nosso objeto
#accessing the age attribute
print ("A idade é:", getattr (std_obj, 'idade', 'Acima de 20'))

O valor definido é “Acima de 20”.

Resultado

No caso da falta do atributo 'idade', o valor definido é impresso.

Se o valor não for definido, a função getattr () gerará uma exceção 'AttributeError'. Vamos ver um exemplo disso.

#creating a student class
classe Aluno:
#defining name attribute
nome = "John"
#defining an email attribute
email = "[email protegido]"
#Creating a student class object
std_obj = Aluno ()
#now std_obj é nosso objeto
#accessing the age attribute
print ("A idade é:", getattr (std_obj, 'idade'))

Resultado

Você também pode usar a função getattr () com namedtuple para acessar os valores. O namedtuple é um contêiner do tipo dicionário, mas você pode acessar seus valores usando a função getattar (). O namedtuple é uma classe de módulo de coleções. Vamos implementar um namedtuple e acessar os valores usando a função getattr (). Estamos criando um namedtuple para o aluno.

#importing o módulo de coleções
importar coleções
#criando um namedtuple para um aluno
#nome e idade são as chaves
Aluno = coleções.namedtuple ('Aluno', ['nome', 'idade'])
#criar um novo professor e adicionar os valores
std = Aluno ("John", 21)
print ("O nome é:", getattr (std, "nome"))
print ("A idade é:", getattr (std, "idade"))

Resultado

Conclusão

A função getattar () é uma função embutida em Python que retorna o valor de um atributo de objeto. A principal razão para usar a função getattr () é que ela torna mais fácil acessar o valor de um atributo usando o nome do atributo. O nome do atributo é definido como uma string e obtemos o valor usando a função getattar (). Um valor também pode ser definido para o atributo ausente. Depois de ler este artigo, com sorte, você aprendeu mais sobre como usar a função getattar () do Python.

Como mostrar o contador de FPS em jogos Linux
Os jogos Linux tiveram um grande impulso quando a Valve anunciou o suporte Linux para o cliente Steam e seus jogos em 2012. Desde então, muitos jogos ...
Como baixar e jogar Sid Meier's Civilization VI no Linux
Introdução ao jogo Civilization 6 é uma versão moderna do conceito clássico introduzido na série de jogos Age of Empires. A ideia era bastante simples...
Como instalar e jogar Doom no Linux
Introdução ao Doom A série Doom teve origem nos anos 90 após o lançamento do Doom original. Foi um sucesso instantâneo e, a partir desse momento, a sé...