Actualmente são muitas as linguagens de programação ao dispor dos programadores e curiosos pela “arte” de programar. O desenvolvimento de aplicações está hoje em dia direcionado para a Web e para os dispositivos móveis mas há ainda muito a fazer no que diz respeito à integração de sistemas.
Depois de iniciarmos a nossa rubrica sobre a linguagem de programação Python, hoje iremos começar a explicar alguns elementos/sintaxe que fazem parte desta.
A propósito da nossa rubrica sobre como programar em python houve alguns leitores que colocaram a questão de ao instalarem o python na sua versão mais recente não funcionarem certos comandos como o simples “print”. Isso deve-se às mudanças introduzidas em python nas versões 3.x em relação as versões 2.x. Então para esclarecer os nossos leitores apresentamos as grandes diferenças sentidas nas novas versões do python.
Mas qual versão devo escolher?
Esta pergunta óbvia que se coloca não tem uma resposta concreta. A versão 3 do python é totalmente funcional e traz funções novas e interessantes. No entanto a versão 2 (em particular a 2.7) foi a mais famosa de todas, é a que tem actualmente mais suporte e mais módulos de terceiros. Por isso depende do objectivo do programador. Se não depender de nenhum módulo não existente na versão 3, deve escolher a mesma, senão é melhor optar pela largamente utilizada versão 2.7.
Então as grandes diferenças são:
- O “print” que passa a ser uma função e portanto obriga o uso de parênteses. Esta função também passou a ter novas capacidades, como o argumento “end=”, ou o “sep=” que permitem alterar o tipo de espaçamentos no fim da linha ou entre argumentos da função respectivamente
Exemplo:
python2:
>>> print ‘Hello’ # Mostra Hello no ecrã e muda o cursor para uma nova linha.
python3:
>>> print(‘Hello’,’world’, sep=’ ‘,end=’! ‘) # Mostra “Hello world! “ no ecrã (note-se que “Hello” e “world” estão separados por uma tabulação e o cursor não se move de seguida para a linha debaixo mas sim para a mesma linha a frente do “!”.
- A função raw_input() que desaparece no python3 e é substituída pela função input(). Em python2 a função input() tentava detectar automaticamente o tipo de dados introduzidos (string, int, float ou bool). Esta detecção desaparece e por default o python3 guarda quaisquer dados de entrada como strings.
Exemplo: Python2: >>> data = raw_input() # Guarda a variável data como do tipo String, sem tentar perceber o que foi introduzido.
>>> data2 = input() #Tenta perceber o que foi introduzido e guardar a variável como do tipo correspondente
Python3:
>>>data = input() # O mesmo que raw_input() em python2
- Divisão:
Em python2 o operador “/” apenas faz a divisão com casas decimais de algum dos dados de entrada foi ele mesmo do tipo float:
>>> 25.0 / 8
3.125
>>> 25 / 8
3
Em python3 o operador “/” faz sempre a divisão com casas decimais:
>>> 25 / 8
3.125
Existem outros pormenores, que podem ser consultados no site oficial do python.