Dne Thursday 20 of December 2007 22:40:57 [EMAIL PROTECTED] napsal(a): > Zdravím, dneska budu ještě jednou otravovat. > Michal Vyskočil mi poradil, jak přijít na jméno volané metody, za to > mu díky, mně to hned posloužilo k realizování mého záměru, počítání > kolikrát byla metoda zavolána, nevím jestli to neřeším úplně blbě.
No, zrovna modul inspect mi prijde jako kanon na vrabce. Daleko elegantnejsi bude pouzit dekoratory a napsat neco podobneho, jako stats = {} def counter(func): def wrapper(*args, **kwargs): ret = func(*args, **kwargs) if not func.__name__ in stats: stats[func.__name__] = 0 stats[func.__name__] += 1 return wrapper @counter def foo(): return "foo" for i in xrange (5): ret = foo() print "%d: %s" % (stats["foo"], ret) Pochopitelne to neni uplne hotove, bylo by vhodnejsi pouzivat nejaky Singleton, misto globalni promenne a mohlo by to umet ukladat modul.jmeno_funkce, pripadne modul.trida.jmeno_metody a pripadne i parametry (napr id), ale pro prvni nastrel to snad staci. O serializaci hodnot na vystup ani nemluve. Navic, neexistuje nejaka knihovna pro Python, ktera statistiky pristupu resi? Pripadne nastroje pro analyzu logu webserveru? -- best regards Michal Vyskocil _______________________________________________ Python mailing list Python@py.cz http://www.py.cz/mailman/listinfo/python