introdução a linguagem python: simples e produtiva
Post on 17-Dec-2014
5.381 Views
Preview:
DESCRIPTION
TRANSCRIPT
Python:simples e produtiva
Álvaro Justen aka Turicashttp://twitter.com/turicashttp://github.com/turicas
http://CursoDeArduino.com.br/
Álvaro Justen aka Turicas, prazer!
@turicasalvaro@CursoDeArduino.com.br
www.CursoDeArduino.com.br
História
Guido van Rossum
Aplicações● Shell scripts● Administração de sistemas/redes● Aplicações científicas● Computação gráfica● Jogos● Interfaces com o usuário/GUI● Aplicações Web● Robótica● “glue-language”● ...
Principais características● Uso geral● Interpretada, VHLL● Criada por Guido van Rossum em 1989● Multiplataforma● OO, Procedural e funcional● Software livre● Baterias incluídas!● Sintaxe elegante, simples e clara● Tipagem dinâmica e forte
Por que Python?
● Fácil de aprender● Poderosa● Alta produtividade● Estruturas de dados de alto nível● Blocos de código são delimitados por indentação! (?)
Quem usa? Onde é usada?● YouTube● Google/Google App Engine● NASA● Industrial Light & Magic● Globo.com● ...●
● GIMP● Blender● Ubuntu● ...
Onde roda?
● GNU/Linux● Mac OS● *nix● Windows● Android● Nokia S60● Microcontroladores● ...
Como instalar?
GNU/Linux e Mac OS: já tem!
Windows: www.python.org
Android: Android Scripting Layer (SL4A)
iPython
● Debian/Ubuntu/derivados:
sudo aptitude install ipython
● Dica: no Ubuntu:
sudo apt-get install aptitude
Tipos básicos● Inteiro: 42● Ponto flutuante: 3.14● Complexo (!): 1.5 + 5.3j● String: “””minha string”””● Tuplas: (1, “aaa”)● Listas:
[1, 2.3, “abc”, [1, “b”]]● Dicionários:
{'a': 1, 2: 'b', [1, 2]: [3, 4]}
Nada de parênteses,nada de chaves!
if expressao1:
comando1
if expressao2:
comando2
elif expressao3:
comando3
elif expressao4:
comando4
else:
comando5
Listas, strings e slicesIn [1]: l = [1, 3, 4, 'LdG', 'Arduino']
In [2]: print l[1]3
In [3]: print l[1:4][3, 4, 'LdG']
In [4]: for elemento in l: ....: print elemento ....: ....:134LdGArduino
Listas, strings e slices (2)In [5]: virus = 'nome-do-virus.exe' In [6]: print virus[-3:]exe In [7]: print virus[5:]do-virus.exe In [8]: print virus.split('.')['nome-do-virus', 'exe'] In [9]: novo_virus = 'nome.do.virus.exe' In [10]: print novo_virus.split('.')['nome', 'do', 'virus', 'exe'] In [11]: print novo_virus.split('.')[-1]exe In [12]: print 'nome.do.virus.pl'.split('.')[-1]pl
Trabalhando com arquivos
arquivo = open('nome.txt')for linha in arquivo: print linha
arquivo_2 = open('nome-2.txt', 'w')arquivo_2.write('Python rules!')arquivo_2.close()
Baterias incluídas! sys, os, re, string, zlib
socket, urrlib, httplib, imaplib
time, datetime, math, random
doctest, unittest, xml, xmlrpclib
struct, pickle, cPickle, threading
logging, decimal
...
Navegando com Python
import urlliburl = 'http://www.CursoDeArduino.com.br/'pagina = urllib.urlopen(url)print pagina.read()
Rola?
+
pySerial - Instalação
● Debian/Ubuntu/derivados:
sudo aptitude install python-serial
● Dica: no Ubuntu:
sudo apt-get install aptitude
Comandando o Arduinocom Python
import serialporta = '/dev/ttyUSB0'baud_rate = 9600arduino = serial.Serial(porta, baud_rate)arduino.write('H')print arduino.read()arduino.close()
Onde aprender?● Tutoriais:
http://www.python.org.br/http://docs.python.org/tutorial
“Google Python Class”
● Lista Python-Brasil e locais● #python-br @ irc.freenode.net● Eventos:
http://www.PythOnCampus.org/http://www.PythonBrasil.org.br/
● Cursos:http://www.WelcomeToTheDjango.com.br/
http://www.CursoDePython.com.br/
http://twitter.com/turicashttp://github.com/turicas
http://CursoDeArduino.com.br/http://blog.justen.eng.br/alvaro@CursoDeArduino.com.br
import this
top related