Você está na página 1de 25

sys - Parâmetros e funções específicos do

sistema
Este módulo fornece acesso a algumas variáveis usadas ou mantidas pelo intérprete e a
funções que interagem fortemente com o intérprete. Está sempre disponível.

sys. abiflags
Nos sistemas POSIX em que o Python foi construído com o configure script padrão , ele
contém os sinalizadores ABI, conforme especificado porPEP 3149 .

Novo na versão 3.2.

sys. argv
A lista de argumentos da linha de comando transmitida para um script Python. argv[0] é o
nome do script (depende do sistema operacional se este é um nome de caminho
completo ou não). Se o comando foi executado usando a -c opção de linha de comando
para o intérprete, argv[0] é definido como a sequência '-c' . Se nenhum nome de script foi
passado para o interpretador Python, argv[0] é a string vazia.

Para percorrer a entrada padrão ou a lista de arquivos fornecida na linha de comando,


consulte o fileinput módulo

Nota: No Unix, os argumentos da linha de comando são transmitidos por bytes do SO.
O Python os decodifica com a codificação do sistema de arquivos e o manipulador de
erros "surrogateescape". Quando você precisar de bytes originais, poderá obtê-lo .
[os.fsencode(arg) for arg in sys.argv]

sys. base_exec_prefix
Definido durante a inicialização do Python, antes da site.py execução, com o mesmo valor
que exec_prefix . Se não estiver em execução em um ambiente virtual , os valores
permanecerão os mesmos; se site.py constatar que um ambiente virtual está em uso, os
valores de prefix e exec_prefix será alterado para apontar para o ambiente virtual, enquanto
base_prefix e base_exec_prefix permanecerá apontando para a instalação base Python (o
qual o ambiente virtual foi criado a partir de).

Novo na versão 3.3.

sys. base_prefix
Definido durante a inicialização do Python, antes da site.py execução, com o mesmo valor
que prefix . Se não estiver em execução em um ambiente virtual , os valores
permanecerão os mesmos; se site.py constatar que um ambiente virtual está em uso, os
valores de prefix e exec_prefix será alterado para apontar para o ambiente virtual, enquanto
base_prefix e base_exec_prefix permanecerá apontando para a instalação base Python (o
qual o ambiente virtual foi criado a partir de).

Novo na versão 3.3.


sys. byteorder
Um indicador da ordem de bytes nativa. Isso terá o valor 'big' nas plataformas big endian
(primeiro byte mais significativo) e 'little' nas plataformas little endian (primeiro byte
menos significativo).

sys. builtin_module_names
Uma tupla de strings que fornece os nomes de todos os módulos compilados neste
interpretador Python. (Esta informação não está disponível de nenhuma outra maneira -
modules.keys() lista apenas os módulos importados.)

sys. call_tracing( func , args )


Ligue func(*args) enquanto o rastreamento estiver ativado. O estado de rastreamento é
salvo e restaurado posteriormente. Isso deve ser chamado de um depurador a partir de
um ponto de verificação para depurar recursivamente algum outro código.

sys. copyright
Uma sequência contendo os direitos autorais pertencentes ao interpretador Python.

sys. _clear_type_cache( )
Limpe o cache de tipo interno. O cache de tipo é usado para acelerar as pesquisas de
atributo e método. Use a função apenas para eliminar referências desnecessárias durante
a depuração do vazamento de referência.

Esta função deve ser usada apenas para fins internos e especializados.

sys. _current_frames( )
Retorne um dicionário mapeando o identificador de cada encadeamento para o quadro de
pilha superior atualmente ativo nesse encadeamento no momento em que a função é
chamada. Observe que as funções no traceback módulo podem criar a pilha de
chamadas, devido a esse quadro.

Isso é mais útil para depuração de deadlock: essa função não requer a cooperação dos
threads em deadlock, e as pilhas de chamadas desses threads ficam congeladas
enquanto permanecerem em deadlock. O quadro retornado para um encadeamento sem
conflito pode não ter relação com a atividade atual desse encadeamento quando o
código de chamada examinar o quadro.

Esta função deve ser usada apenas para fins internos e especializados.

sys. breakpointhook( )
Essa função de gancho é chamada pelo built-in breakpoint() . Por padrão, ele o coloca no
pdb depurador, mas pode ser definido para qualquer outra função, para que você possa
escolher qual depurador será usado.

A assinatura desta função depende do que chama. Por exemplo, a ligação padrão (por
exemplo pdb.set_trace() ) não espera argumentos, mas você pode vinculá-la a uma função
que espera argumentos adicionais (posicional e / ou palavra-chave). A
breakpoint() função interna passa sua *args e **kws diretamente. Quaisquer
breakpointhooks() retornos são retornados breakpoint() .

A implementação padrão primeiro consulta a variável de ambiente PYTHONBREAKPOINT .


Se isso estiver definido como "0" , esta função retornará imediatamente; ou seja, é um
não-op. Se a variável de ambiente não estiver configurada ou definida como a sequência
vazia, pdb.set_trace() será chamada. Caso contrário, essa variável deve nomear uma
função a ser executada, usando a nomenclatura de importação pontilhada do Python, por
exemplo package.subpackage.module.function . Nesse caso,
package.subpackage.module seria importado e o módulo resultante deve ter um nome de
chamada function() . Isso é executado, passando *args e **kws , e o que quer que
function() retorne, sys.breakpointhook() retorna à breakpoint() função interna.

Observe que, se algo der errado durante a importação da chamada nomeada por
PYTHONBREAKPOINT , a RuntimeWarning é relatado e o ponto de interrupção é ignorado.

Observe também que, se sys.breakpointhook() for substituído programaticamente,


PYTHONBREAKPOINT não é consultado.

Novo na versão 3.7.

sys. _debugmallocstats( )
Imprima informações de baixo nível para saber mais sobre o estado do alocador de
memória do CPython.

Se o Python estiver configurado –with-pydebug, ele também executará algumas


verificações caras de consistência interna.

Novo na versão 3.3.

Detalhe da implementação do CPython: Esta função é específica ao CPython. O formato


exato da saída não está definido aqui e pode ser alterado.

sys. dllhandle
Inteiro especificando o identificador da DLL do Python.

Disponibilidade : Windows.

sys. displayhook( valor )


Se o valor não for None , essa função será impressa repr(value) em sys.stdout e salvará o
valor em builtins._ . Se repr(value) não for codificável para sys.stdout.encoding com
sys.stdout.errors manipulador de erros (o que provavelmente é 'strict' ), codifique-o para
sys.stdout.encoding com 'backslashreplace' manipulador de erros.

sys.displayhook é chamado no resultado da avaliação de uma expressão inserida em uma


sessão interativa do Python. A exibição desses valores pode ser personalizada atribuindo
outra função de um argumento a sys.displayhook .

Pseudo-código:
def displayhook(value):
if value is None:
return
# Set '_' to None to avoid recursion
builtins._ = None
text = repr(value)
try:
sys.stdout.write(text)
except UnicodeEncodeError:
bytes = text.encode(sys.stdout.encoding, 'backslashreplace')
if hasattr(sys.stdout, 'buffer'):
sys.stdout.buffer.write(bytes)
else:
text = bytes.decode(sys.stdout.encoding, 'strict')
sys.stdout.write(text)
sys.stdout.write("\n")
builtins._ = value

Alterado na versão 3.2: Use o 'backslashreplace' manipulador de erros ativado


UnicodeEncodeError .

sys. dont_write_bytecode
Se isso for verdade, o Python não tentará gravar .pyc arquivos na importação dos
módulos de origem. Esse valor é inicialmente definido como True ou False dependendo da
-B opção da linha de comandos e do PYTHONDONTWRITEBYTECODE variável de
ambiente, mas você pode configurá-lo para controlar a geração do arquivo bytecode.

sys. excepthook( tipo , valor , retorno )


Esta função imprime um determinado retorno e exceção para sys.stderr .

Quando uma exceção é gerada e não capturada, o intérprete chama sys.excepthook com
três argumentos, a classe de exceção, a instância de exceção e um objeto de retorno. Em
uma sessão interativa, isso acontece pouco antes do controle ser retornado ao prompt;
em um programa Python, isso acontece logo antes da saída do programa. O tratamento
dessas exceções de nível superior pode ser personalizado atribuindo outra função de três
argumentos a sys.excepthook .

sys. __breakpointhook__
sys. __displayhook__
sys. __excepthook__
Esses objetos contêm os valores originais breakpointhook , displayhook e excepthook no
início do programa. Eles são salvos para que breakpointhook , displayhook e
excepthook pode ser restaurado no caso de acontecer para se substituídos por objetos
quebrados ou alternativos.

Novo na versão 3.7: __breakpointhook__

sys. exc_info( )
Essa função retorna uma tupla de três valores que fornecem informações sobre a
exceção que está sendo manipulada no momento. As informações retornadas são
específicas para o encadeamento atual e para o quadro de pilha atual. Se o quadro de
pilha atual não estiver manipulando uma exceção, as informações serão obtidas do
quadro de pilha chamador ou do responsável pela chamada e assim por diante até
encontrar um quadro de pilha que esteja tratando uma exceção. Aqui, “manipulando uma
exceção” é definido como “executando uma cláusula exceto”. Para qualquer quadro de
pilha, apenas informações sobre a exceção que está sendo manipulada atualmente são
acessíveis.

Se nenhuma exceção estiver sendo manipulada em qualquer lugar da pilha, uma tupla
contendo três None valores será retornada. Caso contrário, os valores retornados são .
Seu significado é: type obtém o tipo da exceção que está sendo tratada (uma subclasse
de ); value obtém a instância de exceção (uma instância do tipo de exceção); O traceback
obtém um objeto traceback (consulte o Manual de referência) que encapsula a pilha de
chamadas no ponto em que a exceção ocorreu originalmente. (type, value,
traceback) BaseException

sys. exec_prefix
Uma sequência que fornece o prefixo de diretório específico do site em que os arquivos
Python dependentes da plataforma estão instalados; Por padrão, isso também é
'/usr/local' . Isso pode ser definido no tempo de construção com o --exec-prefix argumento
para o script de configuração . Especificamente, todos os arquivos de configuração (por
exemplo, o pyconfig.h arquivo de cabeçalho) são instalados no diretório e os módulos da
biblioteca compartilhada são instalados , onde XY é o número da versão do Python, por
exemplo . exec_prefix/lib/pythonX.Y/config exec_prefix/lib/pythonX.Y/lib-dynload 3.2

Nota: Se um ambiente virtual estiver em vigor, esse valor será alterado site.py para
apontar para o ambiente virtual. O valor para a instalação do Python ainda estará
disponível, via base_exec_prefix .

sys. executable
Uma string que fornece o caminho absoluto do binário executável para o interpretador
Python, em sistemas onde isso faz sentido. Se o Python não conseguir recuperar o
caminho real para o seu executável, sys.executable será uma string vazia ou None .

sys. exit( [ arg ] )


Saia do Python. Isso é implementado gerando a SystemExit exceção, para que as ações
de limpeza especificadas por finalmente cláusulas de try instruções sejam respeitadas e
é possível interceptar a tentativa de saída em um nível externo.

O argumento opcional arg pode ser um número inteiro que fornece o status de saída
(padrão de zero) ou outro tipo de objeto. Se for um número inteiro, zero é considerado
"término bem-sucedido" e qualquer valor diferente de zero é considerado "término
anormal" por shells e similares. A maioria dos sistemas exige que esteja entre 0 e 127 e
produza resultados indefinidos. Alguns sistemas têm uma convenção para atribuir
significados específicos a códigos de saída específicos, mas geralmente são
subdesenvolvidos; Os programas Unix geralmente usam 2 para erros de sintaxe da linha
de comando e 1 para todos os outros tipos de erros. Se outro tipo de objeto for passado,
None será equivalente a passar zero, e qualquer outro objeto será impresso stderr e
resultará em um código de saída 1. Em particular, sys.exit("some error message") é uma
maneira rápida de sair de um programa quando ocorre um erro.

Como, no exit() final das contas, “only” gera uma exceção, ele somente sai do processo
quando chamado do thread principal e a exceção não é interceptada.

Alterado na versão 3.6: se ocorrer um erro na limpeza após a captura do interpretador


Python SystemExit (como um erro ao liberar dados em buffer nos fluxos padrão), o status
de saída será alterado para 120.

sys. flags
Os sinalizadores de tupla nomeados expõem o status dos sinalizadores de linha de
comando. Os atributos são somente leitura.

atributo bandeira
debug -d

inspect -i

interactive -i

isolated -I

optimize -O ou -OO

dont_write_bytecode -B

no_user_site -s

no_site -S

ignore_environment -E

verbose -v

bytes_warning -b

quiet -q

hash_randomization -R

dev_mode -X dev

utf8_mode -X utf8

Alterado na versão 3.2: quiet atributo adicionado para o novo -q sinalizador.

Novo na versão 3.2.3: O hash_randomization atributo.

Alterado na versão 3.3: Removido division_warning atributo obsoleto .

Alterado na versão 3.4: isolated atributo adicionado para o sinalizador. -I isolated

Alterado na versão 3.7: dev_mode atributo adicionado para o novo sinalizador e atributo
para o novo sinalizador. -X dev utf8_mode -X utf8

sys. float_info
Uma tupla nomeada contendo informações sobre o tipo de flutuação. Ele contém
informações de baixo nível sobre precisão e representação interna. Os valores
correspondem às várias constantes de ponto flutuante definidas no arquivo de cabeçalho
padrão float.h para a linguagem de programação 'C'; consulte a seção 5.2.4.2.2 da norma
ISO / IEC C 1999 [C99] , 'Características dos tipos flutuantes', para obter detalhes.

atributo macro float.h explicação


diferença entre 1 e o menor valor maior que
epsilon DBL_EPSILON
1 que é representável como um flutuador
número máximo de dígitos decimais que
dig DBL_DIG podem ser representados fielmente em um
ponto flutuante; ver abaixo
precisão de flutuação: o número de radix
mant_dig DBL_MANT_DIG dígitos de base no significado de uma
flutuação
max DBL_MAX flutuador finito representável máximo
número inteiro máximo e tal que radix**(e-
max_exp DBL_MAX_EXP
1) seja um flutuador finito representável

número inteiro máximo e tal que 10**e esteja


max_10_exp DBL_MAX_10_EXP
na faixa de flutuadores finitos representáveis
min DBL_MIN flutuador normalizado mínimo positivo
número inteiro mínimo e tal que radix**(e-
min_exp DBL_MIN_EXP
1) seja um flutuador normalizado

número inteiro mínimo e tal que 10**e seja


min_10_exp DBL_MIN_10_EXP
um flutuador normalizado
radix FLT_RADIX raiz de representação do expoente
constante inteira que representa o modo de
arredondamento usado para operações
aritméticas. Isso reflete o valor da macro
FLT_ROUNDS do sistema no momento da
rounds FLT_ROUNDS
inicialização do interpretador. Consulte a
seção 5.2.4.2.2 da norma C99 para obter
uma explicação dos possíveis valores e seus
significados.

O atributo sys.float_info.dig precisa de mais explicações. Se s houver qualquer sequência


que represente um número decimal com sys.float_info.dig dígitos significativos, a
conversão s para um número flutuante e o retorno novamente recuperará uma sequência
que representa o mesmo valor decimal:

>>> import sys >>>


>>> sys.float_info.dig
15
>>> s = '3.14159265358979' # decimal string with 15 significant digits
>>> format(float(s), '.15g') # convert to float and back -> same value
'3.14159265358979'

Mas para strings com sys.float_info.dig dígitos mais que significativos, isso nem sempre é
verdade:

>>> s = '9876543211234567' # 16 significant digits is too many! >>>


>>> format(float(s), '.16g') # conversion changes value
'9876543211234568'

sys. float_repr_style
Uma string indicando como a repr() função se comporta para flutuadores. Se a string tiver
valor, 'short' então, para um float finito x , o repr(x) objetivo é produzir uma string curta com
a propriedade that . Esse é o comportamento usual no Python 3.1 e posterior. Caso
contrário, tem valor e se comporta da mesma maneira que nas versões do Python
anteriores à 3.1. float(repr(x)) == x float_repr_style 'legacy' repr(x)

Novo na versão 3.1.

sys. getallocatedblocks( )
Retorne o número de blocos de memória alocados atualmente pelo intérprete,
independentemente do tamanho. Esta função é útil principalmente para rastrear e
depurar vazamentos de memória. Devido aos caches internos do intérprete, o resultado
pode variar de uma chamada para outra; pode ser necessário ligar _clear_type_cache() e
gc.collect() obter resultados mais previsíveis.

Se uma compilação ou implementação em Python não puder calcular razoavelmente


essas informações, getallocatedblocks() será permitido retornar 0.

Novo na versão 3.4.

sys. getandroidapilevel( )
Retorne a versão da API do tempo de compilação do Android como um número inteiro.

Disponibilidade : Android.

Novo na versão 3.7.

sys. getcheckinterval( )
Retorne o "intervalo de verificação" do intérprete; veja setcheckinterval() .

Descontinuado desde a versão 3.2: use em seu getswitchinterval() lugar.

sys. getdefaultencoding( )
Retorne o nome da codificação de cadeia padrão atual usada pela implementação
Unicode.

sys. getdlopenflags( )
Retorne o valor atual dos sinalizadores usados para dlopen() chamadas. Nomes
simbólicos para os valores dos sinalizadores podem ser encontrados no os módulo (
RTLD_xxx constantes, por exemplo os.RTLD_LAZY ).

Disponibilidade : Unix.

sys. getfilesystemencoding( )
Retorne o nome da codificação usada para converter entre nomes de arquivos Unicode e
nomes de arquivos bytes. Para melhor compatibilidade, str deve ser usado para nomes de
arquivos em todos os casos, embora também represente nomes de arquivos como bytes.
As funções que aceitam ou retornam nomes de arquivos devem suportar str ou bytes e
converter internamente na representação preferida do sistema.

Essa codificação é sempre compatível com ASCII.

os.fsencode() e os.fsdecode() deve ser usado para garantir que o modo correto de
codificação e erros seja usado.

No modo UTF-8, a codificação está utf-8 em qualquer plataforma.


No Mac OS X, a codificação é 'utf-8' .
No Unix, a codificação é a codificação local.
No Windows, a codificação pode ser 'utf-8' ou 'mbcs' , dependendo da configuração
do usuário.

Alterado na versão 3.2: o getfilesystemencoding() resultado não pode None mais ser .

Alterado na versão 3.6: O Windows não tem mais garantia de retorno 'mbcs' . VejoPEP 529
e _enablelegacywindowsfsencoding() para mais informações.

Alterado na versão 3.7: Retorne 'utf-8' no modo UTF-8.

sys. getfilesystemencodeerrors( )
Retorne o nome do modo de erro usado para converter entre nomes de arquivos Unicode
e nomes de arquivos bytes. O nome da codificação é retornado getfilesystemencoding() .

os.fsencode() e os.fsdecode() deve ser usado para garantir que o modo correto de
codificação e erros seja usado.

Novo na versão 3.6.

sys. getrefcount( objeto )


Retorne a contagem de referência do objeto . A contagem retornada geralmente é uma
mais alta do que você poderia esperar, porque inclui a referência (temporária) como
argumento getrefcount() .

sys. getrecursionlimit( )
Retorne o valor atual do limite de recursão, a profundidade máxima da pilha do
interpretador Python. Esse limite evita que recursões infinitas causem um estouro da
pilha C e causem pane no Python. Pode ser definido por setrecursionlimit() .
sys. getsizeof( objeto [ , padrão ] )
Retorne o tamanho de um objeto em bytes. O objeto pode ser qualquer tipo de objeto.
Todos os objetos internos retornam resultados corretos, mas isso não precisa ser
verdadeiro para extensões de terceiros, pois é específico da implementação.

Somente o consumo de memória diretamente atribuído ao objeto é contabilizado, não o


consumo de memória dos objetos a que se refere.

Se fornecido, o padrão será retornado se o objeto não fornecer meios para recuperar o
tamanho. Caso contrário, a TypeError será gerado.

getsizeof() chama o __sizeof__ método do objeto e adiciona uma sobrecarga adicional do


coletor de lixo se o objeto for gerenciado pelo coletor de lixo.

Veja o tamanho da receita recursiva para obter um exemplo de uso getsizeof() recursivo
para encontrar o tamanho dos contêineres e todo o seu conteúdo.

sys. getswitchinterval( )
Retorne o “intervalo de troca de thread” do intérprete; veja setswitchinterval() .

Novo na versão 3.2.

sys. _getframe( [ profundidade ] )


Retorne um objeto de quadro da pilha de chamadas. Se a profundidade inteira opcional
for fornecida, retorne o objeto de quadro que muitas chamadas abaixo da parte superior
da pilha. Se isso for mais profundo que a pilha de chamadas, ValueError será gerado. O
padrão para profundidade é zero, retornando o quadro na parte superior da pilha de
chamadas.

Detalhe da implementação do CPython: Esta função deve ser usada apenas para fins
internos e especializados. Não é garantido que exista em todas as implementações do
Python.

sys. getprofile( )
Obtenha a função de criação de perfil, conforme definido por setprofile() .

sys. gettrace( )
Obtenha a função de rastreamento conforme definido por settrace() .

Detalhe da implementação do CPython: A gettrace() função é destinada apenas à


implementação de depuradores, criadores de perfil, ferramentas de cobertura e similares.
Seu comportamento faz parte da plataforma de implementação, e não da definição da
linguagem e, portanto, pode não estar disponível em todas as implementações do
Python.

sys. getwindowsversion( )
Retorne uma tupla nomeada que descreve a versão do Windows atualmente em
execução. Os elementos nomeados são major , minor , build , platform , service_pack ,
service_pack_minor , service_pack_major , suite_mask , product_type e platform_version .
service_pack contém uma string, platform_version uma 3-tupla e todos os outros valores
são inteiros. Os componentes também podem ser acessados pelo nome, portanto
sys.getwindowsversion()[0] é equivalente a sys.getwindowsversion().major . Para
compatibilidade com versões anteriores, apenas os 5 primeiros elementos são
recuperáveis pela indexação.

plataforma será . 2 (VER_PLATFORM_WIN32_NT)

product_type pode ser um dos seguintes valores:

Constante Significado
1 (VER_NT_WORKSTATION) O sistema é uma estação de trabalho.
O sistema é um controlador de
2 (VER_NT_DOMAIN_CONTROLLER)
domínio.
O sistema é um servidor, mas não um
3 (VER_NT_SERVER)
controlador de domínio.

Essa função envolve a GetVersionEx() função Win32 ; consulte a documentação da


Microsoft OSVERSIONINFOEX() para obter mais informações sobre esses campos.

platform_version retorna a versão principal precisa, versão secundária e número de


compilação do sistema operacional atual, em vez da versão que está sendo emulada
para o processo. Destina-se ao uso em log e não à detecção de recursos.

Disponibilidade : Windows.

Alterado na versão 3.2: Alterado para uma tupla nomeada e adicionado


service_pack_minor , service_pack_major , suite_mask e product_type .

Alterado na versão 3.6: adicionada plataforma_versão

sys. get_asyncgen_hooks( )
Retorna um objeto asyncgen_hooks , que é semelhante ao namedtuple do formulário
(firstiter, finalizer) , em que se espera que firstiter e finalizer sejam None funções que levem
um iterador de gerador assíncrono como argumento e são usadas para agendar a
finalização de um gerador assíncrono por um loop de eventos.

Novo na versão 3.6: ConsultePEP 525 para mais detalhes.

Nota: Esta função foi adicionada provisoriamente (ver PEP 411 para obter detalhes.)

sys. get_coroutine_origin_tracking_depth( )
Obtenha a profundidade atual do rastreamento de origem da corotina, conforme definido
por set_coroutine_origin_tracking_depth() .

Novo na versão 3.7.


Nota: Esta função foi adicionada provisoriamente (ver PEP 411 para obter detalhes.)
Use-o apenas para fins de depuração.

sys. get_coroutine_wrapper( )
Retorna None ou um wrapper definido por set_coroutine_wrapper() .

Novo na versão 3.5: ConsultePEP 492 para mais detalhes.

Nota: Esta função foi adicionada provisoriamente (ver PEP 411 para obter detalhes.)
Use-o apenas para fins de depuração.

Descontinuado desde a versão 3.7: A funcionalidade do wrapper de corotina foi


descontinuada e será removida no 3.8. Veja bpo-32591 para detalhes.

sys. hash_info
Uma tupla nomeada que fornece parâmetros da implementação de hash numérico. Para
obter mais detalhes sobre hash de tipos numéricos, consulte Hashing de tipos numéricos
.

atributo explicação
width largura em bits usados para valores de hash
módulo primário P usado para o esquema numérico de
modulus
hash
inf valor de hash retornado para um infinito positivo
nan valor de hash retornado para uma nan
multiplicador usado para a parte imaginária de um número
imag
complexo
algorithm nome do algoritmo para o hash de str, bytes e memoryview
hash_bits tamanho da saída interna do algoritmo de hash
seed_bits tamanho da chave de semente do algoritmo de hash

Novo na versão 3.2.

Alterado na versão 3.4: Adicionado algoritmo , hash_bits e seed_bits

sys. hexversion
O número da versão codificada como um único número inteiro. É garantido que isso
aumentará a cada versão, incluindo o suporte adequado para versões que não sejam de
produção. Por exemplo, para testar se o interpretador Python é pelo menos a versão
1.5.2, use:

if sys.hexversion >= 0x010502F0:


# use some advanced feature
...
else:
# use an alternative implementation or warn the user
...

Isso é chamado, hexversion pois só parece realmente significativo quando visto como
resultado de passá-lo para a hex() função interna. A tupla nomeada sys.version_info pode
ser usada para uma codificação mais amigável para as pessoas da mesma informação.

Mais detalhes hexversion podem ser encontrados em API e ABI Versioning .

sys. implementation
Um objeto que contém informações sobre a implementação do interpretador Python em
execução no momento. Os seguintes atributos devem existir em todas as
implementações do Python.

name é o identificador da implementação, por exemplo 'cpython' . A string real é definida


pela implementação do Python, mas é garantida que esteja em minúscula.

version é uma tupla nomeada, no mesmo formato que sys.version_info . Ele representa a
versão da implementação do Python . Isso tem um significado distinto da versão
específica da linguagem Python à qual o intérprete atualmente em execução está em
conformidade, o que sys.version_info representa. Por exemplo, para PyPy 1.8
sys.implementation.version pode ser , enquanto seria . Para CPython, eles têm o mesmo
valor, pois é a implementação de referência. sys.version_info(1, 8, 0, 'final',
0) sys.version_info sys.version_info(2, 7, 2, 'final', 0)

hexversion é a versão de implementação em formato hexadecimal, como sys.hexversion .

cache_tag é a tag usada pelo mecanismo de importação nos nomes dos arquivos dos
módulos em cache. Por convenção, seria um composto do nome e versão da
implementação, como 'cpython-33' . No entanto, uma implementação Python pode usar
algum outro valor, se apropriado. Se cache_tag estiver definido como None , indica que o
cache do módulo deve ser desativado.

sys.implementation pode conter atributos adicionais específicos para a implementação do


Python. Esses atributos não padrão devem começar com um sublinhado e não são
descritos aqui. Independentemente do seu conteúdo, sys.implementation não será
alterado durante uma execução do intérprete, nem entre as versões de implementação.
(No entanto, pode mudar entre as versões da linguagem Python.) ConsultePEP 421 para
mais informações.

Novo na versão 3.3.

Nota: A adição de novos atributos necessários deve passar pelo processo normal de
PEP. VejoPEP 421 para mais informações.

sys. int_info
Uma tupla nomeada que contém informações sobre a representação interna de números
inteiros do Python. Os atributos são somente leitura.
Atributo Explicação
número de bits mantidos em cada dígito. Inteiros
bits_per_digit Python são armazenados internamente na base
2**int_info.bits_per_digit

tamanho em bytes do tipo C usado para representar


sizeof_digit
um dígito

Novo na versão 3.1.

sys. __interactivehook__
Quando esse atributo existe, seu valor é chamado automaticamente (sem argumentos)
quando o intérprete é iniciado no modo interativo . Isso é feito após o PYTHONSTARTUP O
arquivo é lido, para que você possa definir esse gancho lá. O site módulo define isso .

Novo na versão 3.4.

sys. intern( string )


Digite a sequência na tabela de seqüências "internadas" e retorne a sequência internada -
que é a própria sequência ou uma cópia. Seqüências de caracteres internas são úteis
para obter um pouco de desempenho na pesquisa de dicionário - se as chaves em um
dicionário são internas e a chave de pesquisa é interna, as comparações de chaves (após
o hash) podem ser feitas por uma comparação de ponteiro em vez de uma comparação
de string. Normalmente, os nomes usados nos programas Python são automaticamente
internados, e os dicionários usados para armazenar os atributos de módulo, classe ou
instância possuem chaves internadas.

Strings internamente não são imortais; você deve manter uma referência ao valor de
retorno intern() ao redor para se beneficiar dele.

sys. is_finalizing( )
Retorne True se o intérprete Python estiver sendo desligado , False caso contrário.

Novo na versão 3.5.

sys. last_type
sys. last_value
sys. last_traceback
Essas três variáveis nem sempre são definidas; elas são definidas quando uma exceção
não é tratada e o intérprete imprime uma mensagem de erro e um rastreamento de pilha.
Seu uso pretendido é permitir que um usuário interativo importe um módulo depurador e
participe da depuração post-mortem sem precisar executar novamente o comando que
causou o erro. (O uso típico é inserir o depurador post-mortem; consulte o módulo para
obter mais informações.) import pdb; pdb.pm() pdb

O significado das variáveis é o mesmo dos valores de retorno exc_info() acima.

sys. maxsize
Um número inteiro que fornece o valor máximo que uma variável do tipo Py_ssize_t pode
receber. Geralmente é em uma plataforma de 32 bits e em uma plataforma de 64
bits. 2**31 - 1 2**63 - 1

sys. maxunicode
Um número inteiro que fornece o valor do maior ponto de código Unicode, ou seja
1114111 ( 0x10FFFF em hexadecimal).

Alterado na versão 3.3: AntesPEP 393 , sys.maxunicode usadas para ser 0xFFFF
ou 0x10FFFF , dependendo a opção de configuração que especificado se os caracteres
Unicode foram armazenadas como UCS-2 ou UCS-4.

sys. meta_path
Uma lista de objetos do localizador de meta caminhos que possuem seus
find_spec() métodos chamados para verificar se um dos objetos pode encontrar o módulo
a ser importado. O find_spec() método é chamado com pelo menos o nome absoluto do
módulo sendo importado. Se o módulo a ser importado estiver contido em um pacote, o
__path__ atributo do pacote pai será passado como um segundo argumento. O método
retorna uma especificação de módulo ou None se o módulo não puder ser encontrado.

Veja também:

importlib.abc.MetaPathFinder
A classe base abstrata que define a interface dos objetos localizadores meta_path .
importlib.machinery.ModuleSpec
A classe concreta que find_spec() deve retornar instâncias de.

Alterado na versão 3.4: as especificações do módulo foram introduzidas no Python 3.4,


por PEP 451 . As versões anteriores do Python procuravam um método chamado
find_module() . Isso ainda é chamado de fallback se uma meta_path entrada não tiver
um find_spec() método.

sys. modules
Este é um dicionário que mapeia os nomes dos módulos para os módulos que já foram
carregados. Isso pode ser manipulado para forçar o recarregamento de módulos e outros
truques. No entanto, a substituição do dicionário não funcionará necessariamente como
esperado e a exclusão de itens essenciais do dicionário poderá causar falha no Python.

sys. path
Uma lista de cadeias que especifica o caminho de pesquisa para módulos. Inicializado a
partir da variável de ambiente PYTHONPATH , além de um padrão dependente da
instalação.

As initialized upon program startup, the first item of this list, path[0] , is the directory
containing the script that was used to invoke the Python interpreter. If the script directory
is not available (e.g. if the interpreter is invoked interactively or if the script is read from
standard input), path[0] is the empty string, which directs Python to search modules in the
current directory first. Notice that the script directory is inserted before the entries
inserted as a result of PYTHONPATH .

A program is free to modify this list for its own purposes. Only strings and bytes should
be added to sys.path ; all other data types are ignored during import.

See also: Module site This describes how to use .pth files to extend sys.path .

sys. path_hooks
A list of callables that take a path argument to try to create a finder for the path. If a finder
can be created, it is to be returned by the callable, else raise ImportError .

Originally specified in PEP 302.

sys. path_importer_cache
A dictionary acting as a cache for finder objects. The keys are paths that have been
passed to sys.path_hooks and the values are the finders that are found. If a path is a valid
file system path but no finder is found on sys.path_hooks then None is stored.

Originally specified in PEP 302.

Changed in version 3.3: None is stored instead of imp.NullImporter when no finder is


found.

sys. platform
This string contains a platform identifier that can be used to append platform-specific
components to sys.path , for instance.

Para sistemas Unix, exceto no Linux, esse é o nome do SO em letras minúsculas


retornado com a primeira parte da versão retornada por anexado, por exemplo , ou , no
momento em que o Python foi construído . A menos que você queira testar uma versão
específica do sistema, é recomendável usar o seguinte idioma: uname -s uname -
r 'sunos5' 'freebsd8'

if sys.platform.startswith('freebsd'):
# FreeBSD-specific code here...
elif sys.platform.startswith('linux'):
# Linux-specific code here...

Para outros sistemas, os valores são:

Sistema platform valor

Linux 'linux'

janelas 'win32'

Windows / Cygwin 'cygwin'

Mac OS X 'darwin'
Alterado na versão 3.3: No Linux, sys.platform não contém mais a versão principal. É
sempre 'linux' , em vez de 'linux2' ou 'linux3' . Como as versões mais antigas do Python
incluem o número da versão, é recomendável usar sempre o startswith idioma
apresentado acima.

Veja também: os.name tem uma granularidade mais grossa. os.uname() fornece
informações sobre a versão dependente do sistema.

O platform módulo fornece verificações detalhadas para a identidade do sistema.

sys. prefix
Uma string que fornece o prefixo de diretório específico do site em que os arquivos
Python independentes da plataforma estão instalados; por padrão, esta é a sequência
'/usr/local' . Isso pode ser definido no tempo de construção com o --prefix argumento para
o script de configuração . A coleção principal de módulos da biblioteca Python é
instalada no diretório enquanto os arquivos de cabeçalho independentes da plataforma
(todos, exceto ) são armazenados , onde XY é o número da versão do Python, por
exemplo . prefix/lib/pythonX.Y pyconfig.h prefix/include/pythonX.Y 3.2

Nota: Se um ambiente virtual estiver em vigor, esse valor será alterado site.py para
apontar para o ambiente virtual. O valor para a instalação do Python ainda estará
disponível, via base_prefix .

sys. ps1
sys. ps2
Strings especificando o prompt primário e secundário do intérprete. Eles são definidos
apenas se o intérprete estiver no modo interativo. Seus valores iniciais neste caso são e .
Se um objeto não string for atribuído a qualquer variável, ele será reavaliado toda vez que
o intérprete se preparar para ler um novo comando interativo; isso pode ser usado para
implementar um prompt dinâmico. '>>> ' '... ' str()

sys. setcheckinterval( intervalo )


Defina o "intervalo de verificação" do intérprete. Esse valor inteiro determina com que
freqüência o intérprete verifica itens periódicos, como comutadores de threads e
manipuladores de sinais. O padrão é 100 , o que significa que a verificação é realizada a
cada 100 instruções virtuais do Python. Configurá-lo para um valor maior pode aumentar
o desempenho de programas que usam threads. Configurá-lo como um valor <= 0 verifica
todas as instruções virtuais, maximizando a capacidade de resposta e a sobrecarga.

Descontinuado desde a versão 3.2: Esta função não tem mais efeito, pois a lógica interna
para troca de encadeamento e tarefas assíncronas foi reescrita. Use em
setswitchinterval() vez disso.

sys. setdlopenflags( N )
Defina os sinalizadores usados pelo intérprete para dlopen() chamadas, como quando o
intérprete carrega módulos de extensão. Entre outras coisas, isso permitirá uma
resolução lenta de símbolos ao importar um módulo, se chamado como
sys.setdlopenflags(0) . Para compartilhar símbolos entre módulos de extensão, chame
como sys.setdlopenflags(os.RTLD_GLOBAL) . Nomes simbólicos para os valores dos
sinalizadores podem ser encontrados no os módulo ( RTLD_xxx constantes, por exemplo
os.RTLD_LAZY ).

Disponibilidade : Unix.

sys. setprofile( profilefunc )


Defina a função de perfil do sistema, que permite implementar um criador de perfil de
código-fonte Python no Python. Veja o capítulo Os criadores de perfil de Python para
obter mais informações sobre o criador de perfil de Python. A função de perfil do sistema
é chamada de forma semelhante à função de rastreio do sistema (consulte settrace() ),
mas é chamada com eventos diferentes, por exemplo, não é chamada para cada linha de
código executada (apenas na chamada e retorno, mas o evento de retorno é relatado
mesmo quando uma exceção foi definida). A função é específica do encadeamento, mas
não há como o criador de perfil saber sobre as alternâncias de contexto entre os
encadeamentos; portanto, não faz sentido usá-lo na presença de vários encadeamentos.
Além disso, seu valor de retorno não é usado, portanto, ele pode simplesmente retornar
None . Erro na função de perfil fará com que seja desativado.

As funções de perfil devem ter três argumentos: quadro , evento e arg . frame é o quadro
atual da pilha. evento é uma string: 'call' , 'return' , 'c_call' , 'c_return' , ou 'c_exception' . arg
depende do tipo de evento.

Os eventos têm o seguinte significado:

'call'
Uma função é chamada (ou algum outro bloco de código inserido). A função de perfil
é chamada; arg é None .

'return'
Uma função (ou outro bloco de código) está prestes a retornar. A função de perfil é
chamada; arg é o valor que será retornado ou None se o evento for causado por uma
exceção sendo gerada.

'c_call'
A função CA está prestes a ser chamada. Pode ser uma função de extensão ou um
recurso interno. arg é o objeto da função C.

'c_return'
A função CA retornou. arg é o objeto da função C.

'c_exception'
A função CA levantou uma exceção. arg é o objeto da função C.

sys. setrecursionlimit( limite )


Defina a profundidade máxima da pilha do interpretador Python para limitar . Esse limite
evita que recursões infinitas causem um estouro da pilha C e causem pane no Python.
O limite mais alto possível depende da plataforma. Um usuário pode precisar definir o
limite mais alto quando tiver um programa que exija recursão profunda e uma plataforma
que suporte um limite mais alto. Isso deve ser feito com cuidado, porque um limite muito
alto pode levar a uma falha.

Se o novo limite for muito baixo na profundidade atual da recursão, uma


RecursionError exceção será gerada.

Alterado na versão 3.5.1: Uma RecursionError exceção agora será gerada se o novo limite
for muito baixo na profundidade atual da recursão.

sys. setswitchinterval( intervalo )


Defina o intervalo de troca de threads do intérprete (em segundos). Esse valor de ponto
flutuante determina a duração ideal das "fatias de tempo" alocadas para threads Python
em execução simultânea. Observe que o valor real pode ser maior, especialmente se
funções ou métodos internos de execução longa forem usados. Além disso, qual
encadeamento é agendado no final do intervalo é uma decisão do sistema operacional. O
intérprete não possui seu próprio agendador.

Novo na versão 3.2.

sys. settrace( tracefunc )


Defina a função de rastreamento do sistema, que permite implementar um depurador de
código-fonte Python no Python. A função é específica do segmento; Para que um
depurador suporte vários threads, ele deve registrar uma função de rastreamento usando
settrace() para cada thread que está sendo depurado ou usado threading.settrace() .

As funções de rastreamento devem ter três argumentos: quadro , evento e arg . frame é o
quadro atual da pilha. evento é uma string: 'call' , 'line' , 'return' , 'exception' ou 'opcode' . arg
depende do tipo de evento.

A função de rastreio é chamada (com o evento definido como 'call' ) sempre que um novo
escopo local é inserido; ele deve retornar uma referência a uma função de rastreamento
local a ser usada para o novo escopo ou None se o escopo não deve ser rastreado.

A função de rastreamento local deve retornar uma referência para si mesma (ou para
outra função para rastreamento adicional nesse escopo) ou None para desativar o
rastreamento nesse escopo.

Se ocorrer algum erro na função de rastreio, ela será desabilitada, assim como
settrace(None) é chamada.

Os eventos têm o seguinte significado:

'call'
Uma função é chamada (ou algum outro bloco de código inserido). A função de
rastreamento global é chamada; arg é None ; o valor de retorno especifica a função de
rastreio local.

'line'
The interpreter is about to execute a new line of code or re-execute the condition of a
loop. The local trace function is called; arg is None ; the return value specifies the new
local trace function. See Objects/lnotab_notes.txt for a detailed explanation of how
this works. Per-line events may be disabled for a frame by setting f_trace_lines to
False on that frame.

'return'
A function (or other code block) is about to return. The local trace function is called;
arg is the value that will be returned, or None if the event is caused by an exception
being raised. The trace function’s return value is ignored.

'exception'
An exception has occurred. The local trace function is called; arg is a tuple (exception,
value, traceback) ; the return value specifies the new local trace function.

'opcode'
The interpreter is about to execute a new opcode (see dis for opcode details). The
local trace function is called; arg is None ; the return value specifies the new local
trace function. Per-opcode events are not emitted by default: they must be explicitly
requested by setting f_trace_opcodes to True on the frame.

Note that as an exception is propagated down the chain of callers, an 'exception' event is
generated at each level.

Para um uso mais refinado, é possível definir uma função de rastreio atribuindo
explicitamente, em vez de contar com a definição indireta via valor de retorno de uma
função de rastreio já instalada. Isso também é necessário para ativar a função de
rastreamento no quadro atual, o que não funciona. Observe que, para que isso funcione,
uma função de rastreamento global deve ter sido instalada com o objetivo de ativar o
mecanismo de rastreamento de tempo de execução, mas não precisa ser a mesma
função de rastreamento (por exemplo, pode ser uma função de rastreamento aéreo baixo
que simplesmente retorna para se desativar imediatamente em cada
quadro). frame.f_trace = tracefunc settrace() settrace() None

Para obter mais informações sobre objetos de código e quadro, consulte A hierarquia de
tipos padrão .

Detalhe da implementação do CPython: A settrace() função é destinada apenas à


implementação de depuradores, criadores de perfil, ferramentas de cobertura e similares.
Seu comportamento faz parte da plataforma de implementação, e não da definição da
linguagem e, portanto, pode não estar disponível em todas as implementações do
Python.

Alterado na versão 3.7: 'opcode' tipo de evento adicionado; f_trace_lines e


f_trace_opcodes atributos adicionados aos quadros

sys. set_asyncgen_hooks( firstiter , finalizer )


Aceita dois argumentos opcionais de palavra-chave que são chamadas que aceitam um
iterador de gerador assíncrono como argumento. O firstiter que pode ser chamado será
chamado quando um gerador assíncrono for iterado pela primeira vez. O finalizador será
chamado quando um gerador assíncrono estiver prestes a ser coletado.

Novo na versão 3.6: ConsultePEP 525 para obter mais detalhes e para obter um exemplo
de referência de um método finalizador , consulte a implementação
asyncio.Loop.shutdown_asyncgens em Lib / asyncio / base_events.py

Nota: Esta função foi adicionada provisoriamente (ver PEP 411 para obter detalhes.)

sys. set_coroutine_origin_tracking_depth( profundidade )


Permite ativar ou desativar o rastreamento de origem da corotina. Quando ativado, o
cr_origin atributo nos objetos da corotina conterá uma tupla de (nome do arquivo, número
da linha, nome da função) descrevendo o retorno em que o objeto da corotina foi criado,
com a chamada mais recente primeiro. Quando desativado, cr_origin será Nenhum.

Para habilitar, passe um valor de profundidade maior que zero; isso define o número de
quadros cujas informações serão capturadas. Para desativar, passe definir profundidade
para zero.

Essa configuração é específica do segmento.

Novo na versão 3.7.

Nota: Esta função foi adicionada provisoriamente (ver PEP 411 para obter detalhes.)
Use-o apenas para fins de depuração.

sys. set_coroutine_wrapper( invólucro )


Permite interceptar a criação de objetos de corotina (apenas aqueles criados por uma
função; geradores decorados com ou não serão interceptados). async
def types.coroutine() asyncio.coroutine()

O argumento do wrapper deve ser:

um callable que aceita um argumento (um objeto de corotina);


None , para redefinir o wrapper.

Se chamado duas vezes, o novo wrapper substitui o anterior. A função é específica do


segmento.

O invólucro que pode ser chamado não pode definir novas corotinas direta ou
indiretamente:

def wrapper(coro):
async def wrap(coro):
return await coro
return wrap(coro)
sys.set_coroutine_wrapper(wrapper)

async def foo():


pass
# The following line will fail with a RuntimeError, because
# ``wrapper`` creates a ``wrap(coro)`` coroutine:
foo()

Veja também get_coroutine_wrapper() .

Novo na versão 3.5: ConsultePEP 492 para mais detalhes.

Nota: Esta função foi adicionada provisoriamente (ver PEP 411 para obter detalhes.)
Use-o apenas para fins de depuração.

Descontinuado desde a versão 3.7: A funcionalidade do wrapper de corotina foi


descontinuada e será removida no 3.8. Veja bpo-32591 para detalhes.

sys. _enablelegacywindowsfsencoding( )
Altera o modo padrão de codificação e erros do sistema de arquivos para 'mbcs' e
'replace' respectivamente, para consistência com as versões do Python anteriores à 3.6.

Isso é equivalente a definir o PYTHONLEGACYWINDOWSFSENCODING variável de


ambiente antes de iniciar o Python.

Disponibilidade : Windows.

Novo na versão 3.6: ConsultePEP 529 para mais detalhes.

sys. stdin
sys. stdout
sys. stderr
Objetos de arquivo usados pelo intérprete para entrada, saída e erros padrão:

stdin é usado para todas as entradas interativas (incluindo chamadas para input() );
stdout é usado para as instruções de saída print() e expressão e para os prompts de
input() ;
Os próprios prompts do intérprete e suas mensagens de erro são acessados stderr .

Esses fluxos são arquivos de texto regulares, como os retornados pela open() função.
Seus parâmetros são escolhidos da seguinte maneira:

A codificação de caracteres depende da plataforma. As plataformas não Windows


usam a codificação de localidade (consulte locale.getpreferredencoding() ).

No Windows, o UTF-8 é usado para o dispositivo do console. Dispositivos sem


caracteres, como arquivos de disco e pipes, usam a codificação de localidade do
sistema (ou seja, a página de código ANSI). Dispositivos de caracteres que não são
do console, como NUL (ou seja, onde isatty () retorna True), usam o valor das
páginas de códigos de entrada e saída do console na inicialização, respectivamente
para stdin e stdout / stderr. O padrão é a codificação de localidade do sistema, se o
processo não estiver inicialmente conectado a um console.
O comportamento especial do console pode ser substituído, definindo a variável de
ambiente PYTHONLEGACYWINDOWSSTDIO antes de iniciar o Python. Nesse caso,
as páginas de código do console são usadas como para qualquer outro dispositivo
de caractere.

Em todas as plataformas, você pode substituir a codificação de caracteres


definindo PYTHONIOENCODING variável de ambiente antes de iniciar o Python ou
usar a nova opção de linha de comando e -X utf8 PYTHONUTF8 variável de ambiente.
No entanto, para o console do Windows, isso se aplica apenas quando
PYTHONLEGACYWINDOWSSTDIO também está definido.
Quando interativo, stdout e os stderr fluxos são armazenados em buffer de linha.
Caso contrário, eles são armazenados em buffer de bloco como arquivos de texto
regulares. Você pode substituir esse valor pela -u opção de linha de comando.

Nota: Para gravar ou ler dados binários de / para os fluxos padrão, use o buffer objeto
binário subjacente . Por exemplo, para escrever bytes em stdout , use
sys.stdout.buffer.write(b'abc') .

No entanto, se você estiver escrevendo uma biblioteca (e não controlar em qual


contexto seu código será executado), saiba que os fluxos padrão podem ser
substituídos por objetos semelhantes a arquivos, como os io.StringIO que não
suportam o buffer atributo.

sys. __stdin__
sys. __stdout__
sys. __stderr__
Esses objetos contêm os valores originais stdin , stderr e stdout no início do programa.
Eles são usados durante a finalização e podem ser úteis para imprimir no fluxo padrão
real, independentemente do sys.std* objeto ter sido redirecionado.

Também pode ser usado para restaurar os arquivos reais para objetos de arquivos de
trabalho conhecidos, caso eles tenham sido substituídos por um objeto quebrado. No
entanto, a maneira preferida de fazer isso é salvar explicitamente o fluxo anterior antes
de substituí-lo e restaurar o objeto salvo.

Nota: Sob algumas condições stdin , stdout e stderr assim como os valores originais
__stdin__ , __stdout__ e __stderr__ pode ser None . Geralmente é o caso de aplicativos GUI
do Windows que não estão conectados a um console e aplicativos Python iniciados
com pythonw .

sys. thread_info
Uma tupla nomeada contendo informações sobre a implementação do encadeamento.

Atributo Explicação
Atributo Explicação
Nome da implementação do encadeamento:

'nt' : Threads do Windows


name
'pthread' : Encadeamentos POSIX
'solaris' : Threads do Solaris

Nome da implementação do bloqueio:

'semaphore' : uma trava usa um semáforo


lock 'mutex+cond' : um bloqueio usa um mutex e uma
variável de condição
None se esta informação é desconhecida

Nome e versão da biblioteca de encadeamentos. É uma string ou


version
None se esta informação é desconhecida.

Novo na versão 3.3.

sys. tracebacklimit
Quando essa variável é configurada para um valor inteiro, ela determina o número
máximo de níveis de informações de retorno de retorno impressas quando ocorre uma
exceção não tratada. O padrão é 1000 . Quando definida como 0 ou menos, todas as
informações de retorno são suprimidas e apenas o tipo e o valor da exceção são
impressos.

sys. version
Uma string contendo o número da versão do interpretador Python, além de informações
adicionais sobre o número da compilação e o compilador usado. Essa sequência é
exibida quando o intérprete interativo é iniciado. Não extraia informações sobre a versão,
use version_info as funções fornecidas pelo platform módulo.

sys. api_version
A versão da API C para esse intérprete. Os programadores podem achar isso útil ao
depurar conflitos de versão entre o Python e os módulos de extensão.

sys. version_info
A tuple containing the five components of the version number: major, minor, micro,
releaselevel, and serial. All values except releaselevel are integers; the release level is
'alpha' , 'beta' , 'candidate' , or 'final' . The version_info value corresponding to the Python
version 2.0 is (2, 0, 0, 'final', 0) . The components can also be accessed by name, so
sys.version_info[0] is equivalent to sys.version_info.major and so on.

Changed in version 3.1: Added named component attributes.

sys. warnoptions
This is an implementation detail of the warnings framework; do not modify this value.
Refer to the warnings module for more information on the warnings framework.

sys. winver
The version number used to form registry keys on Windows platforms. This is stored as
string resource 1000 in the Python DLL. The value is normally the first three characters of
version . It is provided in the sys module for informational purposes; modifying this value
has no effect on the registry keys used by Python.

Availability: Windows.

sys. _xoptions
A dictionary of the various implementation-specific flags passed through the -X
command-line option. Option names are either mapped to their values, if given explicitly,
or to True . Example:

$ ./python -Xa=b -Xc


Python 3.2a3+ (py3k, Oct 16 2010, 20:14:50)
[GCC 4.4.3] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import sys
>>> sys._xoptions
{'a': 'b', 'c': True}

CPython implementation detail: This is a CPython-specific way of accessing options


passed through -X . Other implementations may export them through other means, or not
at all.

New in version 3.2.

Citations

[C99]ISO / IEC 9899: 1999. "Linguagens de programação - C." Um esboço público desta norma
está disponível em http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1256.pdf .

Você também pode gostar