Как реализовать __getattribute__ без ошибки бесконечной рекурсии?

| |

Я хочу переопределить доступ к одной переменной в классе, но нормально вернуть все остальные. Как это сделать с помощью __getattribute__?

Я пробовал следующее (что также должно иллюстрировать то, что я пытаюсь сделать), но получаю ошибку рекурсии:

класс D(объект): def __init__(self): self.test=20 self.test2=21 def __getattribute__(self,name): if name=="test": вернуть 0. иначе: вернуть self.__dict__[name] >>>print D().test 0.0 >>>print D().test2 ... RuntimeError: превышена максимальная глубина рекурсии в cmp 

Shop

Learn programming in R: courses

$

Best Python online courses for 2022

$

Best laptop for Fortnite

$

Best laptop for Excel

$

Best laptop for Solidworks

$

Best laptop for Roblox

$

Best computer for crypto mining

$

Best laptop for Sims 4

$

Latest questions

NUMPYNUMPY

psycopg2: insert multiple rows with one query

12 answers

NUMPYNUMPY

How to convert Nonetype to int or string?

12 answers

NUMPYNUMPY

How to specify multiple return types using type-hints

12 answers

NUMPYNUMPY

Javascript Error: IPython is not defined in JupyterLab

12 answers

News


Wiki

Python OpenCV | cv2.putText () method

numpy.arctan2 () in Python

Python | os.path.realpath () method

Python OpenCV | cv2.circle () method

Python OpenCV cv2.cvtColor () method

Python - Move item to the end of the list

time.perf_counter () function in Python

Check if one list is a subset of another in Python

Python os.path.join () method