3.1.1 Numbers

O interpretador atua como uma calculadora simples: você pode digitar uma expressão e será escrito o valor. A sintaxe de expressão é direta: os operadores +, -, * e / funcionam exatamente como na maioria das outras linguagens (por exemplo, Pascal ou C); parênteses podem ser usados para o agrupamento. Por exemplo:

   >>> 2+2
    4
    >>> # Isto é um comentario
    ... 2+2
    4
    >>> 2+2  # e um comentário na mesma linha do codigo
    4
    >>> (50-5*6)/4
    5
    >>> # divisao inteira retorna flutuante:
    ... 7/3
    2
    >>> 7/-3
    -3

O sinal de igual (‘=’) é usado para atribuir um valor a uma variável. Depois, nenhum resultado é exibido antes do próximo prompt interativo:

    >>> width = 20
    >>> height = 5*9
    >>> width * height
    900

Um valor pode ser atribuído a várias variáveis simultaneamente:

    >>> x = y = z = 0  # Zero x, y and z
    >>> x
    0
    >>> y
    0
    >>> z
    0

Existe total suporte para ponto flutuante; operadores com operandos de tipo misto convertem o operando inteiro em ponto flutuante:

    >>> 3 * 3.75 / 1.5
    7.5
    >>> 7.0 / 2
    3.5

Os números complexos também são suportados; Números imaginários são escritos com um sufixo de ‘j’ ou ‘J’. Os números complexos com um componente real diferente de zero são escritos como ‘(real + imagj)’, ou podem ser criados com a ‘função complexa (real, imag)’.

    >>> 1j * 1J
    (-1+0j)
    >>> 1j * complex(0,1)
    (-1+0j)
    >>> 3+1j*3
    (3+3j)
    >>> (3+1j)*3
    (9+3j)
    >>> (1+2j)/(1+1j)
    (1.5+0.5j)

Os números complexos são sempre representados como dois números de ponto flutuante, a parte real e imaginária. Para extrair essas partes de um número complexo z, use z.real e z.imag.

    >>> a=1.5+0.5j
    >>> a.real
    1.5
    >>> a.imag
    0.5

As funções de conversão para ponto flutuante e inteiro (float (), int () e long ()) não funcionam para números complexos – não existe uma maneira correta de converter um número complexo em um número real. Use abs (z) para obter sua magnitude (como um flutuante) ou z.real para obter sua parte real.

    >>> a=3.0+4.0j
    >>> float(a)
    Traceback (most recent call last):
      File "", line 1, in ?
    TypeError: can't convert complex to float; use abs(z)
    >>> a.real
    3.0
    >>> a.imag
    4.0
    >>> abs(a)  # sqrt(a.real**2 + a.imag**2)
    5.0
    >>>

No modo interativo, a última expressão impressa é atribuída à variável _. Isso significa que, quando você está usando o Python como uma calculadora de mesa, é um pouco mais fácil continuar os cálculos, por exemplo:

    >>> tax = 12.5 / 100
    >>> price = 100.50
    >>> price * tax
    12.5625
    >>> price + _
    113.0625
    >>> round(_, 2)
    113.06
    >>>

Essa variável deve ser tratada como somente leitura pelo usuário. Não atribua explicitamente um valor a ele – você criaria uma variável local independente com o mesmo nome, mascarando a variável incorporada com seu comportamento mágico.

Anúncios

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair /  Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair /  Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair /  Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair /  Alterar )

Conectando a %s