Manufaturação industrial
Internet das coisas industrial | Materiais industriais | Manutenção e reparo de equipamentos | Programação industrial |
home  MfgRobots >> Manufaturação industrial >  >> Industrial programming >> python

Slots de classe Python


Slots de classe Python são um recurso que poucos programadores conhecem. Em uma classe com slot, definimos explicitamente os campos que nossa classe pode ter usando o nome do campo mágico __slots__ . Isso tem algumas vantagens:

Aqui está um exemplo de como definir uma classe com slot:
>>> class Card:
...     __slots__ = 'rank', 'suite'
...     def __init__(self, rank, suite):
...             self.rank = rank
...             self.suite = suite
... 
>>> qh = Card('queen', 'hearts')

Para mim, a maior vantagem é que você não pode adicionar aleatoriamente novos atributos a uma classe com slot. Pode evitar erros dispendiosos! Para demonstrar:um erro de digitação ao atribuir um atributo a uma classe com slot gerará um erro em vez de o Python criar silenciosamente um novo atributo.

Para classes pequenas sem herança complexa, usar slots pode ser uma vantagem. Especialmente quando você precisa criar muitas instâncias dessa classe, a economia de memória e o acesso mais rápido aos atributos podem fazer a diferença.

Finalmente, só para você saber, você também pode combinar essa técnica com classes de dados!

python

  1. Tipos de dados Python
  2. Operadores Python
  3. Instrução de passagem do Python
  4. Argumentos da função Python
  5. Dicionário Python
  6. Exceções personalizadas do Python
  7. Programação Orientada a Objetos Python
  8. Iteradores Python
  9. Fechamentos Python
  10. Data e hora do Python