Gli oggetti di tipo Stats possiedono i seguenti metodi:
| ) |
| filename[, ...]) |
| filename) |
| key[, ...]) |
'time' o
'name').
Quando viene passato pi� di un argomento, le chiavi addizionali
vengono utilizzate come criteri secondari quando le precedenti chiavi hanno prodotto
delle righe uguali. Ad esempio, sort_stats('nome', 'file')
ordiner� i record secondo il nome della funzione ed ordiner� le
funzioni con stesso nome secondo il nome del file a cui appartengono.
Per i nomi delle chiavi si possono usare delle abbreviazioni, purch� non creino ambiguit�. Ecco l'elenco delle chiavi definite:
| Argomento | Significato |
|---|---|
'calls' |
numero di chiamate |
'cumulative' |
tempo cumulativo |
'file' |
nome di file |
'module' |
nome di file |
'pcalls' |
numero di chiamate primitive |
'line' |
numero di riga |
'name' |
nome della funzione |
'nfl' |
nome/file/riga |
'stdname' |
nome standard |
'time' |
tempo interno |
Notate che tutti gli ordinamenti sulle statistiche avvengono in ordine
decrescente (dal pi� costoso in termini di tempo al meno), mentre name, file e line sono
in ordine ascendente (alfabeticamente). La sottile distinzione che c'�
tra 'nfl' e 'stdname' � che quest'ultimo � un ordinamento
del nome come stampato, e quindi i numeri delle righe vengono comparati
in maniera bizzarra. Per esempio, le righe 3, 20, e 40 (se appartengono
allo stesso file) verranno ordinate come 20, 3, 40. Invece,
'nfl' effettua una comparazione numerica dei numeri di riga.
Infatti sort_stats('nfl') � la stessa cosa di
sort_stats('name', 'file', 'line').
Per compatibilit� con il vecchio profiler, viene consentito l'uso di
argomenti numerici come -1, 0, 1 e 2.
Vengono interpretati rispettivamente come 'stdname',
'calls', 'time' e 'cumulative'. Se usate questo
formato per gli argomenti, potrete usare solo un tipo di ordinamento(la chiave
numerica) ed ulteriori argomenti verranno silenziosamente ignorati.
| ) |
| [restriction, ...]) |
L'ordinamento con cui vengono stampati i risultati � basato sull'ultima operazione sort_stats() effettuata sull'oggetto (ed alle eventuali successive chiamate ai metodi add() e strip_dirs()).
Gli argomenti forniti possono venire utilizzati per limitare la lista alle voci pi� significative. Inizialmente, la lista include tutte le funzioni che sono state analizzate. Ogni restrizione pu� essere un intero (per selezionare una quantit� di righe), o un decimale compreso tra 0.0 e 1.0 inclusi (per selezionare una percentuale di righe), o un'espressione regolare (per eseguire corrispondenze sullo standard che viene stampato; come in Python 1.5b1, si usa la sintassi per le espressioni regolari in stile Perl definita nel modulo re). Se si specificano varie restrizioni, queste vengono applicate sequenzialmente. Per esempio:
print_stats(.1, 'foo:')
innanzitutto limiter� lo stampato al 10% della lista e poi stamper� solamente le funzioni che appartengono ai file .*foo:. Invece il comando:
print_stats('foo:', .1)
prima selezioner� solo le funzioni che appartengono ai file .*foo: e poi stamper� solo il 10% della lista cos� ottenuta.
| [restriction, ...]) |
| [restriction, ...]) |
| ) |
None. Il metodo viene ancora definito per una questione di
retrocompatibilit�.