Начиная с Python 3.7 можно определить __dir__()
в модуле. Но что, если вы хотите взять обычный вывод dir(module)
и добавить или удалить его?
Например, я хотел бы сделать что-то вроде этого:
def __dir__():
dir_out = super().__dir__()[:] # does not work
dir_out.pop('Optional') # get rid of the typing imports
return dir_out
Очевидно, поскольку модуль не является обычным классом, вызов super()
не работает. Но есть ли другой способ?