Utilizando o Python como calculadora

Esse artigo é uma tradução do artigo "An Informal Introduction to Python" (Uma introdução informal ao Python), feita por Gabriel Gomes de Almeida, Analista Junior de Redes e Sistemas Linux.

[ Hits: 15.495 ]

Por: Gabriel Gomes de Almeida em 21/12/2007 | Blog: http://ggalmeida.wordpress.com/


Usando Python como calculadora



Vamos tentar alguns comandos simples do Python. Inicie o interpretador e aguarde pelo prompt primário, ">>> " (isso não deve demorar).

Números:

O interpretador atua como uma calculadora simples: você pode digitar uma expressão nele e ele imprimirá o resultado. A sintaxe da expressão é simples: os operadores +, -, *, /, trabalham assim como na maioria das outras línguas (Pascal e C, por exemplo); parêntesis podem ser usados para agrupamentos. Por exemplo:

>>> 2+2
4
>>> # This is a comment
... 2+2
4
>>> 2+2 # and a comment on the same line as code
4
>>> (50-5*6)/4
5
>>> # Integer division returns the floor:
... 7/3
2
>>> 7/-3
-3

O sinal de igual ("=") é utilizado para atribuir valor a uma variável. Depois, sem resultados, é exibido antes do próximo comando interativo:

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

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

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

Há suporte completo a pontos flutuantes (float); operadores com operandos mistos convertem o operando inteiro para ponto flutuante:

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

Números complexos também são suportados. Números imaginários são escritos com o sufixo "j" ou "J". Números complexos com um component não-zero são escritos como ("real+imagj"), ou podem ser criados com a função complexa ("real, imag").

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

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

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

As funções de conversão de ponto flutuante e inteiro (float(), int (), e long() ) não trabalham com números complexos --- não há uma maneira de converter um número complexo em um número real. Use abs (z) para obter a sua amplitude (como um fundo de tesouraria) ou z.real para obter a sua parte real.

>>> a=3.0+4.0j
>>> float(a)

Traceback (most recent call last):
  File "<stdin>", 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ê estiver usando o Python como uma calculadora de mesa, é um pouco mais fácil para continuar cálculos, por exemplo:

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

Esta variável deve ser tratada como "somente leitura" pelo usuário. Não explicitamente atribuir um valor a ela -- você iria criar uma variável local independente com o mesmo nome mascarando as variáveis embutidas com o mesmo comportamento.

Página anterior    

Páginas do artigo
   1. Introdução
   2. Usando Python como calculadora
Outros artigos deste autor
Nenhum artigo encontrado.
Leitura recomendada

Instalação básica do Plone 3 com Buildout no Linux

FreeBSD + Zope/Plone, uma idéia frustrante?

ZPT - Zope Pages Templates

Gerenciando registros em banco de dados com Zope

Criando formulários no Zope/Plone utilizando o banco de dados MySQL

  
Comentários
[1] Comentário enviado por elgio em 28/12/2007 - 09:42h

>>> 010 + 4
12

???????

Assim como em muitas calculadoras do Linux e como no próprio C lido com %i, se um numero começa com 0 ele entende ser octal. 010 em octal é 8. O mesmo para 0x:

>>> 010 + 0xa
18

Agora foram somados 8 (010) com 10 (0xa -> 10 em hexa)

[2] Comentário enviado por The fabio em 15/05/2009 - 17:56h

Muito util pra iniciantes seu artigo, eu mesmo aprendi muito brincando com essa "calculadora em python"

[3] Comentário enviado por R4F43L*3SP em 10/07/2009 - 17:56h

Muito interessante e vale apena para que está aprendendo ou quer aprender python

[4] Comentário enviado por steff.henrique em 04/08/2011 - 17:29h

valeu fera, to começando a estudar phyton,
mas ainda acho um pouco confuso, abs


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts