python3@andrewsmedina
porquê python3?        ‣   apresentação, “python3”globo .com
python3 no python2
divisão        ‣   // em vez de /        ‣   from __future__ import divisionglobo .com
separe dados binários de string        ‣   b”” e u””        ‣   unicode e bytes        ‣   https://gist.github.com/4128327...
use “iterator-methods” para dicionários        ‣   iterkeys, iteritems, itervaluesglobo .com
context managers        ‣   with        ‣   https://gist.github.com/4128513globo .com
custom context managers        ‣   __enter__        ‣   __exit__        ‣   https://gist.github.com/4128516globo .com
str.format()        ‣   “{0} - {1}”.format(“andrews”, 19)        ‣   “{name} - {idade}”.format(name=”andrews”, idade=19)gl...
set literals        ‣   {1,1,1}globo .com
set comprehension        ‣   {x for x in [1,2,3,3]}globo .com
dict comprehension        ‣   {key.upper(): value for key, value in d.items()}globo .com
generators        ‣   yield        ‣   https://gist.github.com/4128556globo .com
generator expression        ‣   (x for x in Silly Walk)globo .com
print        ‣   from __future__ import print_function        ‣   https://gist.github.com/4128557        ‣   https://gist....
classes abstratas        ‣   https://gist.github.com/4128566globo .com
multiprocessing        ‣   https://gist.github.com/4128572globo .com
OrderedDict        ‣   https://gist.github.com/4128574globo .com
ambiente de desenvolvimento
instalação        ‣   http://python.org/download/releases/3.3.0/globo .com
virtualenv        ‣   pyvenv myenv        ‣   python -m venv myenvglobo .com
distribute        ‣   curl -O http://python-distribute.org/distribute_setup.py        ‣   python distribute_setup.pyglobo ...
pip        ‣   easy_install pipglobo .com
o que mudou
range, zip, map, filter        ‣   retornam iterators        ‣   cuidado com “x = range(5)”globo .com
print        ‣   objeto        ‣   novos parâmetros (sep, end, file, flush)globo .com
exceptions        ‣   except IOError as e:globo .com
class ClassName:        ‣   new style        ‣   antes era “class ClassName(object):”globo .com
str/bytes        ‣   python2 -> str == unicode        ‣   python2 -> bytes == str        ‣   antes a conversão era implíci...
str/bytes        ‣   str (unicode no python2) para representação        ‣   bytes (str no python2) para transferênciaglobo...
int        ‣   long foi renomeado para intglobo .com
novidades
annotations        ‣   adiciona meta dados em uma função        ‣   https://gist.github.com/4128579globo .com
str.format()        ‣   nova maneira de formatar stringsglobo .com
str.format_map()        ‣   nova maneira de formatar stringsglobo .com
bytearray        ‣   mutávelglobo .com
memoryview        ‣   https://gist.github.com/4128582globo .com
FileIO        ‣   substitui métodos do módulo os        ‣   https://gist.github.com/4128583globo .com
concurrent.futures        ‣   https://gist.github.com/4128587        ‣   https://gist.github.com/4128588globo .com
functools.lru_cache        ‣   memoização        ‣   https://gist.github.com/4128591globo .com
como portar
apenas python3globo .com
python 2 e 3globo .com
2to3globo .com
3to2        ‣   pip install 3to2globo .com
six        ‣   pip install sixglobo .com
leitura        ‣   http://python3porting.com/        ‣   http://docs.python.org/3/        ‣   http://getpython3.com/divein...
obrigado!
Próximos SlideShares
Carregando em…5
×

Python 3 - tutorial

2.273 visualizações

Publicada em

Tutorial sobre Python 3. Onde abordo:

- como programar python 3 no python 2.
- novidades
- mudanças
- ambiente de desenvolvimento
- como portar

Publicada em: Tecnologia
0 comentários
4 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

Sem downloads
Visualizações
Visualizações totais
2.273
No SlideShare
0
A partir de incorporações
0
Número de incorporações
266
Ações
Compartilhamentos
0
Downloads
56
Comentários
0
Gostaram
4
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • Python 3 - tutorial

    1. 1. python3@andrewsmedina
    2. 2. porquê python3? ‣ apresentação, “python3”globo .com
    3. 3. python3 no python2
    4. 4. divisão ‣ // em vez de / ‣ from __future__ import divisionglobo .com
    5. 5. separe dados binários de string ‣ b”” e u”” ‣ unicode e bytes ‣ https://gist.github.com/4128327globo .com
    6. 6. use “iterator-methods” para dicionários ‣ iterkeys, iteritems, itervaluesglobo .com
    7. 7. context managers ‣ with ‣ https://gist.github.com/4128513globo .com
    8. 8. custom context managers ‣ __enter__ ‣ __exit__ ‣ https://gist.github.com/4128516globo .com
    9. 9. str.format() ‣ “{0} - {1}”.format(“andrews”, 19) ‣ “{name} - {idade}”.format(name=”andrews”, idade=19)globo .com
    10. 10. set literals ‣ {1,1,1}globo .com
    11. 11. set comprehension ‣ {x for x in [1,2,3,3]}globo .com
    12. 12. dict comprehension ‣ {key.upper(): value for key, value in d.items()}globo .com
    13. 13. generators ‣ yield ‣ https://gist.github.com/4128556globo .com
    14. 14. generator expression ‣ (x for x in Silly Walk)globo .com
    15. 15. print ‣ from __future__ import print_function ‣ https://gist.github.com/4128557 ‣ https://gist.github.com/4128561globo .com
    16. 16. classes abstratas ‣ https://gist.github.com/4128566globo .com
    17. 17. multiprocessing ‣ https://gist.github.com/4128572globo .com
    18. 18. OrderedDict ‣ https://gist.github.com/4128574globo .com
    19. 19. ambiente de desenvolvimento
    20. 20. instalação ‣ http://python.org/download/releases/3.3.0/globo .com
    21. 21. virtualenv ‣ pyvenv myenv ‣ python -m venv myenvglobo .com
    22. 22. distribute ‣ curl -O http://python-distribute.org/distribute_setup.py ‣ python distribute_setup.pyglobo .com
    23. 23. pip ‣ easy_install pipglobo .com
    24. 24. o que mudou
    25. 25. range, zip, map, filter ‣ retornam iterators ‣ cuidado com “x = range(5)”globo .com
    26. 26. print ‣ objeto ‣ novos parâmetros (sep, end, file, flush)globo .com
    27. 27. exceptions ‣ except IOError as e:globo .com
    28. 28. class ClassName: ‣ new style ‣ antes era “class ClassName(object):”globo .com
    29. 29. str/bytes ‣ python2 -> str == unicode ‣ python2 -> bytes == str ‣ antes a conversão era implícitaglobo .com
    30. 30. str/bytes ‣ str (unicode no python2) para representação ‣ bytes (str no python2) para transferênciaglobo .com
    31. 31. int ‣ long foi renomeado para intglobo .com
    32. 32. novidades
    33. 33. annotations ‣ adiciona meta dados em uma função ‣ https://gist.github.com/4128579globo .com
    34. 34. str.format() ‣ nova maneira de formatar stringsglobo .com
    35. 35. str.format_map() ‣ nova maneira de formatar stringsglobo .com
    36. 36. bytearray ‣ mutávelglobo .com
    37. 37. memoryview ‣ https://gist.github.com/4128582globo .com
    38. 38. FileIO ‣ substitui métodos do módulo os ‣ https://gist.github.com/4128583globo .com
    39. 39. concurrent.futures ‣ https://gist.github.com/4128587 ‣ https://gist.github.com/4128588globo .com
    40. 40. functools.lru_cache ‣ memoização ‣ https://gist.github.com/4128591globo .com
    41. 41. como portar
    42. 42. apenas python3globo .com
    43. 43. python 2 e 3globo .com
    44. 44. 2to3globo .com
    45. 45. 3to2 ‣ pip install 3to2globo .com
    46. 46. six ‣ pip install sixglobo .com
    47. 47. leitura ‣ http://python3porting.com/ ‣ http://docs.python.org/3/ ‣ http://getpython3.com/diveintopython3/globo .com
    48. 48. obrigado!

    ×