Questo modulo fornisce l'accesso ad alcune variabili usate o mantenute dall'interprete, e a funzioni che interagiscono fortemente con l'interprete stesso. È sempre disponibile.
argv[0] � il nome dello script (dipende dal sistema
operativo che questi venga indicato da un percorso completo o meno).
Se il comando viene eseguito usando l'opzione -c dalla
riga di comando dell'interprete, argv[0] viene impostata con
il contenuto della stringa '-c'. Se nessun nome di script
viene passato all'interprete Python, argv ha lunghezza zero.
'big' su piattaforme big-endian (il byte pi�
significativo prima) e 'little' su piattaforme
little-endian (byte meno significativo prima).
Nuovo nella versione 2.0.
modules.keys() riporta
solo i moduli importati).
| valore) |
None, questa funzione lo
stampa su sys.stdout e lo salva in __builtin__._.
sys.displayhook viene chiamata sul risultato della
valutazione di un'espressione inserita in una sessione interattiva
di Python. La visualizzazione di questi valori pu� essere
personalizzata assegnando a sys.displayhook un'altra funzione
con un solo argomento.
| tipo, valore, traceback) |
sys.stderr un dato traceback
[NdT:traccia dello stack] e l'eccezione che lo ha creato.
Quando un'eccezione viene sollevata e non raccolta,
l'interprete chiama sys.excepthook con tre argomenti: la
classe dell'eccezione, l'istanza dell'eccezione ed un oggetto
traceback. In una sessione interattiva ci� si verifica appena prima
che il controllo venga restituito al prompt; in un programma Python,
invece, appena prima che il programma stesso termini. La gestione di
eccezioni di cos� alto livello pu� essere personalizzata assegnando
a sys.excepthook un'altra funzione con tre argomenti.
displayhook
e excepthook all'avvio del programma. Essi vengono salvati
in modo tale che displayhook e excepthook possano venire
ripristinati nel caso vengano sostituiti con degli oggetti corrotti.
| ) |
Se nessuna eccezione viene momentaneamente gestita da qualche parte
sullo stack, viene restituita una tupla contenente tre valori
None. Altrimenti, i valori restituiti sono
((tipo, valore, traceback)). Il loro
significato � il seguente: tipo riceve il tipo dell'eccezione
che si sta gestendo (un oggetto classe); valore riceve il
cosiddetto parametro dell'eccezione (il suo valore associato o
il secondo argomento da sollevare, che � sempre un'istanza
di classe se il tipo dell'eccezione � un oggetto classe);
traceback riceve un oggetto di tipo traceback (cfr. Reference
Manual) che comprende lo stack della chiamata a partire dal punto
in cui si � verificata originariamente l'eccezione.
Se viene chiamata exc_clear(), questa funzione
restituisce tre valori None fino a quando non viene sollevata
un'altra eccezione nel thread corrente oppure lo stack d'esecuzione
non ritorna a un frame (d'esecuzione) dove viene gestita un'altra
eccezione.
Assegnare il valore di ritorno di
traceback ad una variabile locale in una funzione che
stia gestendo un'eccezione provocher� un riferimento
circolare. Ci� impedir� che qualsiasi cosa, referenziata da una
variabile locale nella stessa funzione oppure da traceback, venga
trattata dal garbage-collector. Dal momento che la maggior parte
delle funzioni non ha bisogno di accedere al valore di traceback,
la soluzione migliore � quella di usare qualcosa del tipo
exctype, value = sys.exc_info()[:2], per estrarre soltanto
il tipo e il valore dell'eccezione. Se si ha veramente bisogno del
traceback, assicuratevi di eliminarlo dopo l'uso (la cosa migliore
sarebbe un'istruzione try ... finally) oppure
chiamare exc_info() all'interno di una funzione che non
gestisca lei stessa un'eccezione.
Note:
A partire dalla versione 2.2 di Python, tali circoli viziosi
vengono automaticamente corretti quando la garbage collection
viene abilitata e divengono irrangiungibili, ma rimane comunque pi�
efficiente evitarne la creazione.
| ) |
None, fino a quando non viene sollevata
un'altra eccezione nel thread corrente oppure lo stack d'esecuzione
ritorna ad un frame (d'esecuzione) dove si sta gestendo un'altra
eccezione.
Questa funzione � necessaria soltanto in poche ed oscure situazioni. Queste includono sistemi di registrazione e gestione di errori, che restituiscono informazioni sull'ultima eccezione oppure su quella corrente. La funzione pu� anche venire usata anche per cercare di liberare risorse e dare l'avvio alla terminazione di un oggetto, sebbene non esiste garanzia su quali oggetti verranno liberati, se ve ne sono. Nuovo nella versione 2.3.
exc_type viene impostato su None e gli altri due restano
indefiniti.
'/usr/local'. Pu� venire impostata al momento della
compilazione con l'argomento --exec-prefix nello
script configure. Specificatamente, tutti i file di
configurazione (es. il file header pyconfig.h) vengono
installati nella directory
exec_prefix + '/lib/pythonversion/config' e i moduli di
libreria condivisi in
exec_prefix + '/lib/pythonversion/lib-dynload', dove
version � uguale a version[:3].
| [arg]) |
None � equivalente a passare zero, qualsiasi altro
oggetto viene stampato sullo sys.stderr, e il risultato nel
codice di uscita � 1.
In particolare, sys.exit("messaggio di errore") � la maniera
pi� veloce di uscire da un programma quando si verifica un errore.
os._exit().
| ) |
| ) |
| ) |
| ) |
None se viene usata la
codifica predefinita di sistema. Il valore del risultato dipende dal
sistema operativo:
| oggetto) |
| ) |
| [profondit�]) |
Questa funzione dovrebbe essere utilizzata solamente per scopi speciali o interni (all'interprete).
| ) |
platform pu� assumere uno dei seguenti valori:
Questa funzione incapsula la funzione Win32 GetVersionEx(); consultate la documentazione Microsoft per ulteriori informazioni su questi valori.
Disponibilit�: Windows. Nuovo nella versione 2.3.
if sys.hexversion >= 0x010502F0:
# uso di qualche funzionalit� avanzata
...
else:
# usa un'implementazione alternativa o l'invio di un
#+ avvertimento all'utente
...
Questa viene chiamata "hexversion" (letteralmente: "versione
esadecimale") poich� assomiglia a qualcosa di comprensibile solo
quando viene vista attraverso la funzione built-in hex().
Per una codifica pi� leggibile potete utilizzare il valore
di version_info.
Nuovo nella versione 1.5.2.
Il significato delle variabili � lo stesso di quello dei valori
restituiti da exc_info(), vista precedentemente.
Poich� esiste un solo thread interattivo, la thread-safety non � un
problema per queste variabili, a differenza di quanto accade per
exc_type exc_type etc..
2**31-1. Il pi�
grande numero intero negativo � -maxint-1 -- l'asimmetria �
frutto dell'aritmetica binaria in complemento a 2.
Inizializzata all'avvio del programma, il primo elemento
di questa lista, path[0], � la directory contenente lo script
utilizzato per invocare l'interprete Python. Se la directory
dello script non � disponibile (p.es. se l'interprete viene
invocato interattivamente, o se lo script viene letto direttamente
dallo standard input), path[0] � una stringa vuota, che indica
a Python di cercare i moduli prima nella directory corrente.
Attenzione che la directory dello script viene inserita prima
delle altre voci risultanti in PYTHONPATH.
Un programma � libero di modificare questa lista per i propri scopi.
Modificato nella versione 2.3: le stringhe Unicode non vengono pi� ignorate.
'sunos5' o 'linux1'. Pu� venire utilizzata per
aggiungere componenti specifici del sistema a path, per
istanza.
'/usr/local'. Pu� venire
impostata in fase di compilazione con l'opzione
--prefix nello script di configure.
La principale collezione dei moduli di libreria di Python viene
installata nella directory
prefix + '/lib/pythonversion', mentre gli header file
indipendenti dal sistema (tutti, eccetto pyconfig.h) vengono
collocati in prefix + '/include/pythonversion', dove
version � uguale a version[:3].
'>>> ' e '... '. Se un oggetto non stringa
viene assegnato ad entrambe le variabili, la funzione
str() viene valutata ogni volta che l'interprete si prepara
a leggere un nuovo comando interattivo; queste stringhe possono venire
usate per implementare un prompt dinamico.
| intervallo) |
100, il che
significa che il controllo viene fatto ogni 100 istruzioni Python
virtuali. Impostandolo a un valore maggiore � possibile incrementare
le prestazioni per i programmi che fanno uso di thread.
Impostandolo a un valore <= 0, il controllo viene effettuato ad
ogni istruzione virtuale, massimizzando la responsivit� a scapito di
un maggiore carico di lavoro.
| nome) |
| n) |
sys.setdlopenflags(0). Per condividere i
simboli attraverso i moduli di estensione, si deve chiamare
sys.setdlopenflags(dl.RTLD_NOW | dl.RTLD_GLOBAL). I nomi
simbolici per le opzioni del modulo possono essere trovate sia nel
modulo dl che nel modulo DLFCN.
Se DLFCN non � disponibile, pu� essere generato da
/usr/include/dlfcn.h usando lo script h2py.
Disponibilit�: Unix.
Nuovo nella versione 2.2.
| profilefunc) |
None.
| limite) |
Il massimo limite possibile dipende dalla piattaforma in uso. Un utente pu� aver bisogno di impostare un limite pi� alto quando ha un programma che richieda una ricorsione profonda, e una piattaforma che supporti un limite pi� alto. Questo dovrebbe essere fatto con cura, perch� un limite troppo alto pu� causare un crash.
| tracefunc) |
stdin viene usato per
tutti gli input dell'interprete, ad eccezione degli script che non
includono le chiamate input() e
raw_input(). stdout viene
usato per l'output di print, per le istruzioni, e per gli
inviti di input() e raw_input().
L'invito dell' interprete ed i suoi messaggi di errore (la maggior
parte di essi) vengono inviati allo stderr. stdout e
stderr non hanno bisogno di essere dei file oggetto built-in:
ogni oggetto � accettabile finch� possiede un metodo write()
che prenda una stringa argomento. (Il cambiamento di questi oggetti
non influisce sui flussi I/O standard, per processi eseguiti da
os.popen(), os.system(), o della famiglia di
funzioni di exec*() nel modulo os.)
stdin,
stderr e stdout all'inizio del programma. Vengono
usati durante la finalizzazione e potrebbero essere utili per
ripristinare gli attuali file che sappiamo essere file oggetto
funzionanti, nel caso in cui siano stati sovrascritti con un oggetto
corrotto.
1000. Quando viene impostata a 0 o
inferiore, tutta l'informazione della traceback viene soppressa e
viene stampata soltanto il tipo di eccezione ed il valore.
'version (#build_number,
build_date, build_time) [compiler]'. I primi tre
caratteri vengono usati per identificare la versione nelle directory
d'installazione (dove appropriato su ciascuna piattaforma).
Un esempio:
>>> import sys >>> sys.version '1.5.2 (#0 Apr 13 1999, 10:51:12) [MSC 32 bit (Intel)]'
'alpha',
'beta', 'candidate' o 'final'.
Il version_info corrispondente alla versione Python 2.0
�: (2, 0, 0, 'final', 0).
Nuovo nella versione 2.0.
Vedete anche:
sys.path.