segunda-feira, 3 de março de 2008

De olho no Python 2.6

Lawrence Oluyede escreveu vários posts sobre as atualizações disponíveis na versão 2.6 (trunk) do Python.

É uma série que vale a pena ler na íntegra, mas deixo aqui alguns pontos:
  • with e as agora são palavras reservadas
  • tuplas nomeadas:

      >>> from collections import NamedTuple

>>> Point = NamedTuple(‘Point’, ‘x y’)
>>> p = Point(10, 5)
>>> p.x
10
>>> p.y
5

  • os.walk() agora pode seguir links

rhymes@groove ~ % ll temp                                                                                                                 total 8

drwxr-xr-x 3 rhymes rhymes 102B Mar 18 14:49 a/
lrwxr-xr-x 1 rhymes rhymes 5B Mar 18 14:49 link@ -> /Users/rhymes/Documents
>>> import os
>>> for root, dirs, files in walk(‘temp’):
… print root, dirs, files

temp [‘a’, ‘link’] []

temp/a [] [‘foo’]
>>> for root, dirs, files in walk(‘temp’, followlinks=True):
… print root, dirs, files

temp [‘a’, ‘link’] []
temp/a [] [‘foo’]
temp/link [‘.parallels-vm-directory’, …]

  • é possível ver o que se tornará obsoleto no Python 3 usando o switch -3 ao chamar o interpretador python (python -3 arquivo.py)
  • Abstract Base Classes foram retro-portadas para o Python 2.6

Com o lançamento da versão alpha do Python 2.6, esses artigos podem servir como uma boa base de estudos!