tiempo real que matrices graficos graficas graficar grafica ejes crear barras python function self-reference

real - Python: obtener una referencia a una función desde dentro de sí mismo



python graficos 2d (3)

Si defino una función:

def f(x): return x+3

Luego puedo almacenar objetos como atributos de la función, así:

f.thing="hello!"

Me gustaría hacer esto desde dentro del código de la función en sí. El problema es, ¿cómo obtengo una referencia a la función desde dentro de sí misma?


De la misma manera, solo usa su nombre.

>>> def g(x): ... g.r = 4 ... >>> g <function g at 0x0100AD68> >>> g(3) >>> g.r 4


O utilizar un cierre:

def gen_f(): memo = dict() def f(x): try: return memo[x] except KeyError: memo[x] = x + 3 return f f = gen_f() f(123)

Algo más agradable en mi humilde opinión


Si está intentando realizar una memorización, puede usar un diccionario como parámetro predeterminado:

def f(x, memo={}): if x not in memo: memo[x] = x + 3 return memo[x]