0
代碼 - 應該implent的len個魔術方法用下面的代碼:問題implenting __len__與SQLAlchemy的func.count得到某種遞歸錯誤
def __len__(self):
from sqlalchemy import func
self.len = session.query(func.count(Question.id)).scalar()
return int(self.len)
def __repr__(self):
self.repr = "traffic theory question, current number of questions:{0}".format(self.__len__)
return self.repr
我得到什麼(3條上線保持在一個長長的清單重複,然後用下面的行終止):
File "C:\Python27\dir\file.py", line 129, in __repr__
self.repr = "traffic theory question, current number of questions:{0}".format(self.__len__)
RuntimeError: maximum recursion depth exceeded while getting the str of an object
我要強調調用再版類的方法,但是當時候我只收到此錯誤我叫len(q)(q是我正在使用的類實例)我得到正確答案!
任何線索?
你們剛纔弄明白應該使用.len。不管怎麼說,還是要謝謝你 – alonisser