Правильное определение одноэлементного класса в Python

Я пытаюсь создать Token class, который принимает начальные значения и передает его экземпляр в другой класс. это моя попытка использовать Singleton поскольку мне нужен только один экземпляр токена на сеанс пользователя.

class Token(object):
          _instance = None

          def __new__(cls, *args, userName = None, password = None, tokenData = {}):
              if cls._instance is None:
                  print('Creating the object')


                  cls._instance = super(Token, cls).__new__(cls)
                  cls._instance.userName =  userName
                  cls._instance.password =  password
                  cls._instance.tokenData = tokenData

              return cls._instance


class UseResource():
           def __init__(Token):
               def acceptToken(Token):
                    token = Token._instance()
                    print( token.userName )
                    accessResource(token)


    newtoken = Token(username="Rob", password='1234abcd', tokenData = {type:auth, value:32, duration:3600} )
    resource = UseResource(newtoken)

Есть ли лучший способ инициализировать аргументы класса?

0

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *