Usando o Interpretador Python

Prévio Próximo

Python Logo2.1. Invocando o Interpretador

O interpretador Python é normalmente instalado em /usr/local/bin/python3.4 nas máquinas em que se encontra disponível; colocando /usr/local/bin em seu caminho de busca do Unix shell, torna possível iniciá-lo digitando o comando:

python3.4

no o shell. Desde a escolha do diretório onde o interpretador vive é uma opção de instalação, outros lugares são possíveis; verifique com seu guru Python ou administrador do sistema local. (Por exemplo, /usr/local/python é uma localização alternativa popular.)Em máquinas Windows, a instalação do Python é geralmente colocado em C:\Python27, mas você pode mudar isso quando você estiver executando o instalador. Para adicionar este diretório para o seu caminho, você pode digitar o seguinte comando no prompt de comando em uma caixa DOS:

set path=%path%;C:python34

Digitando um caractere de fim-de-arquivo (Control-D em Unix, Control-Z no Windows) no prompt primário faz com que o intérprete para sair com um status de saída zero. Se isso não funcionar, você pode sair do interpretador, digitando o seguinte comando: quit ().

Recursos para edição de linha do intérprete normalmente não são muito sofisticados. No Unix, quem instalou o interpretador pode ter habilitado o suporte para a biblioteca readline GNU, que adiciona mais elaborados recursos de edição e de história interativa. Talvez a verificação mais rápida para ver se a edição de linha de comando é suportada é digitando Control-P no primeiro prompt Python que você recebe. Se ele apita, você tem edição de linha de comando; ver apêndice Interativo Edição de entrada e História Substituição para uma introdução às teclas. Se não aparecer nada acontecer, ou se ^p é ecoado, edição de linha de comando não está disponível; você só vai ser capaz de usar backspace para remover caracteres a partir da linha atual.

O intérprete trabalha de forma semelhante a shell Unix: quando chamado com a entrada padrão conectado a um dispositivo tty, ele lê e executa os comandos de forma interativa; quando chamado com um argumento de nome de arquivo ou com um arquivo como entrada padrão, ele lê e executa um script a partir desse arquivo

Uma segunda maneira de começar o intérprete é o comando python -c [arg] …, que executa a(s) instrução(ões) no comando, análogo a opção -c do shell. Desde comandos Python muitas vezes contêm espaços ou outros caracteres que são especiais para o shell, geralmente é aconselhado a citar comando em sua totalidade com aspas simples.

Alguns módulos Python também são úteis como scripts. Estes podem ser invocados usando o módulo python -m [arg] …, que executa o arquivo de origem para o módulo como se você tivesse escrito o seu nome completo na linha de comando.

Quando um arquivo script é usado, às vezes é útil para ser capaz de executar o script e entrar em modo interativo depois. Isto pode ser feito passando -i antes do script.

Todas as opções de linha de comando estão descritos na linha de comando e meio ambiente.

2.1.1. Passando Argumentos

Quando conhecido pelo interpretador, o nome do script e argumentos adicionais posteriormente são transformados em uma lista de strings e atribuído à variável argv no módulo sys. Você pode acessar esta lista executando import sys. O comprimento da lista é pelo menos um; quando nenhum script ou argumentos são dados, sys.argv[0] é uma string vazia. Quando o nome do script for ‘-‘ (significando entrada padrão), sys.argv[0] está definido para ‘-‘. Quando o comando  -c é usado, sys.argv[0] é definido como ‘c’. Quando -m módulo é utilizado, sys.argv[0] está definido para o nome completo do módulo localizado. Opções encontrados após o comando -c ou módulo -m não são consumidos pela opção  de processamento do interpretador Python, mas deixam em sys.argv para o comando ou módulo manusear.

2.1.2. Modo Interativo

Quando os comandos são lidos de um tty, o intérprete está a ser dito no modo interativo. Neste modo, ele pede para o próximo comando com o prompt primário, normalmente de três sinais de maior (>>>); para linhas de continuação ele solicitará com o prompt secundário, por padrão, três pontos (…). O interpretador imprime uma mensagem de boas vindas, informando seu número de versão e um aviso de direitos autorais antes de imprimir a primeira mensagem:

$ python3.4
Python 3.4 (default, Mar 16 2014, 09:25:04)
[GCC 4.8.2] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>>

Linhas de continuação são necessárias ao entrar em uma construção multi-line. Como exemplo, dê uma olhada neste if:

>>> the_world_is_flat = 1>>> if the_world_is_flat:
...     print "Be careful not to fall off!"
...
Be careful not to fall off!

2.2. O Interpretador e seu Ambiente

2.2.1. Source Code Encoding

 

É possível a utilização de codificações diferentes de ASCII em arquivos de origem Python. A melhor maneira de fazer isso é colocar mais uma linha de comentário especial logo após a linha #! para definir a codificação do arquivo fonte:

# -*- coding: encoding -*-

Com essa declaração, todos os caracteres no arquivo de origem será tratado como tendo a codificação de codificação, e será possível escrever diretamente literais strings Unicode na codificação selecionada. A lista de codificações possíveis pode ser encontrada na Biblioteca de Referência Python, na seção sobre codecs.

Por exemplo, para escrever literais Unicode incluindo o símbolo da moeda Euro, a codificação ISO-8859-15 pode ser usada, com o símbolo do Euro tendo o valor ordinal 164. Esse script, quando salvo com a codificação ISO-8859-15, imprimirá o valor de 8364 (o ponto de código Unicode correspondente ao símbolo do Euro) e depois sair:

# -*- coding: iso-8859-15 -*-
currency = u"€"
print ord(currency)

Se o seu editor suporta a gravação de arquivos como UTF-8, com uma marca de ordem de byte UTF-8 (alias BOM), você pode usar isso em vez de uma declaração de codificação. IDLE suporta esta capacidade se options/general/Default Source  Encoding/UTF-8 estiver definido. Observe que esta assinatura não é compreendida em versões mais antigas do Python (2.2 e versões anteriores), e também não é compreendida pelo sistema operacional para arquivos de script com linhas  #! (usado apenas em sistemas Unix).

Ao usar UTF-8 (seja através da assinatura ou uma declaração de codificação), caracteres da maioria das linguagens do mundo podem ser usados simultaneamente em strings literais e comentários. O uso de caracteres não-ASCII em identificadores não é suportado. Para exibir todos esses caracteres corretamente, o seu editor deve reconhecer que o arquivo é UTF-8, e deve usar uma fonte que suporta todos os caracteres no arquivo.

Prévio Próximo