Buscar

16 Anexo documentação Python 3 8 3

Prévia do material em texto

01/06/2020 16. Anexo — documentação Python 3.8.3
https://docs.python.org/pt-br/3/tutorial/appendix.html 1/2
16. Anexo
16.1. Modo interativo
16.1.1. Tratamento de erros
Quando um erro ocorre, o interpretador exibe uma mensagem de erro e um stack trace
(rastreamento de pilha). Se estiver no modo interativo, ele volta para o prompt primário; se a
entrada veio de um arquivo, a execução termina com um status de saída nonzero (diferente
de zero) após a exibição do stack trace. (Exceções tratadas por uma cláusula except numa
declaração try não são consideradas erros, nesse contexto.) Alguns erros são
irremediavelmente graves e causam términos de execução com status de saída nonzero;
isso pode acontecer devido a inconsistências internas e em alguns casos por falta de
memória. Todas as mensagens de erro são escritas no fluxo de erros padrão; a saída normal
resultante da execução de comandos é escrita no canal de saída padrão.
Digitar o caractere de interrupção (geralmente Control-C ou Delete) em prompts primários ou
secundários causam a interrupção da entrada de dados e o retorno ao prompt primário. [1]
Digitar a interrupção durante a execução de um comando levanta a exceção
KeyboardInterrupt, que pode ser tratada por uma declaração try.
16.1.2. Scripts Python executáveis
Em sistemas Unix similares ao BSD, scripts Python podem ser executados diretamente, tal
como scripts shell, se tiverem a linha de código
(assumindo que o interpretador está na PATH do usuário) no começo do script e configurando
o arquivo no modo executável. Os dois primeiros caracteres do arquivo devem ser #!. Em
algumas plataformas, essa primeira linha deve terminar com uma quebra de linha em estilo
Unix ('\n'), e não em estilo windows ('\r\n'). Note que o caractere '#' (em inglês
chamado de hash, ou pound etc.), é usado em Python para marcar o início de um
comentário.
O script pode receber a permissão para atuar em modo executável através do comando
chmod.
$ chmod +x myscript.py 
Em sistemas Windows, não existe a noção de um “modo executável”. O instalador Python
associa automaticamente os arquivos .py com o python.exe, de forma que um clique duplo
num arquivo Python o executará como um script. A extensão pode ser também .pyw, o que
omite a janela de console que normalmente aparece.
16.1.3. Arquivo de inicialização do modo interativo
#!/usr/bin/env python3.5
https://docs.python.org/pt-br/3/reference/compound_stmts.html#except
https://docs.python.org/pt-br/3/reference/compound_stmts.html#try
https://docs.python.org/pt-br/3/library/exceptions.html#KeyboardInterrupt
https://docs.python.org/pt-br/3/reference/compound_stmts.html#try
01/06/2020 16. Anexo — documentação Python 3.8.3
https://docs.python.org/pt-br/3/tutorial/appendix.html 2/2
[1]
Quando se usa o Python no modo interativo, pode ser útil definir alguns comandos que sejam
executados automaticamente toda vez que o interpretador for inicializado. Isso pode ser feito
configurando-se uma variável de ambiente chamada PYTHONSTARTUP para que ela aponte
para o arquivo contendo esses comandos. Isso é similar ao recurso .profile das shells
Unix.
Esse arquivo será lido apenas em sessões do modo interativo, e não quando Python lê
comandos de um script, tampouco quando /dev/tty é passado explicitamente como a
origem dos comandos (neste caso, teremos um comportamento similar a uma sessão
interativa padrão). Ele é executado no mesmo namespace (espaço de nomes) em que os
comandos interativos são executados, de modo que os objetos que ele define ou importa
possam ser usados sem qualificação na sessão interativa. Também é possível alterar os
prompts sys.ps1 e sys.ps2 no mesmo arquivo.
Caso deseje usar um arquivo de inicialização adicional a partir do atual diretório de trabalho,
você pode programá-lo no arquivo de inicialização global usando um código parecido com if
os.path.isfile('.pythonrc.py'): exec(open('.pythonrc.py').read()). Se quiser usar
o arquivo de inicialização num script, será necessário fazê-lo explicitamente no script:
16.1.4. Módulos de customização
Python oferece dois hooks que permitem sua customização: sitecustomize e
usercustomize. Para entender como funcionam, primeiro você deve localizar o diretório site-
packages do usuário. Inicie o Python e execute este código:
Agora você pode criar um arquivo chamado usercustomize.py neste diretório e colocar
qualquer coisa que quiser dentro. Isto vai afetar toda invocação do Python, a menos que seja
iniciado com a opção -s para desabilitar a importação automática.
sitecustomize funciona da mesma forma, mas normalmente é criado por um administrador
do computador no diretório site-packages global e é importado antes de usercustomize.
Veja a documentação do módulo site para mais detalhes.
Notas de Rodapé
Um problema com a package GNU Readline pode impedir que isso aconteça.
import os
filename = os.environ.get('PYTHONSTARTUP')
if filename and os.path.isfile(filename): 
 with open(filename) as fobj: 
 startup_file = fobj.read() 
 exec(startup_file)
>>> import site
>>> site.getusersitepackages()
'/home/user/.local/lib/python3.5/site-packages'
>>>
https://docs.python.org/pt-br/3/using/cmdline.html#envvar-PYTHONSTARTUP
https://docs.python.org/pt-br/3/using/cmdline.html#cmdoption-s
https://docs.python.org/pt-br/3/library/site.html#module-site

Continue navegando