SlideShare uma empresa Scribd logo
!! !!
" # $% & %' ($ )
2
!"#$%&
'!"&()$%&
# *"+&!, ) & *"+&!
! " # $%& '& (( %& )* +! "
'& (( * , ,+ " $%&
'& ((--- %& .* *+
/ * 0
* 1 2 "
30 ! 4 .
5 * *) 0 !
*" $%& 2 30 !
1 5 6 & '& ((--- *+
6 & 1 !
7
! &" 1 1 8
1 30
4 ! 7 ! 8 " . 9 2
0 *
Josué Labaki
# $%&
/ & :
;< 2$ =& 2
labaki@feis.unesp.br
3
-!(./
# " 0 1.!(&# *"+&! 2
> $ $%& ? @
A ; $%& B
C ; $%& D
E F " G
# " . & ( 34"& 56
> 2 >H
A 5 >@
C >I
E / " A>
# " 7& 0#"#!(& 34"& 89
> J AC
A 6 30 AB
# " " : && : # () # & 8;
> AI
A C>
C = CC
E J C@
@ , EH
B EA
# " & & .0 . & &< #0# /&0 ="& >?
# " 7)!$@ A()=& 25
> / 37 @>
A J 37 * K @D
C 6 BA
4
E BB
@ ; DC
# " =<)! ")B) CCC D;
> 30 DI
A 2 1 2 GC
C 6 GB
E $%& / * GI
@ 4 ! 9 IA
B IC
# " E 0 =& ;2
> * & 37 I@
A ! * & IG
C " # >HH
E ! / " >HA
@ $ >HE
B ; ) & >HI
# " F E /G/.& 555
0 #GCCC 559
5
# " 0 1.!(&# *"+&!
> & B) ")(# *"+&!H
$%& 30 8 8 'FL55. F %L &
5 5 +! & # F 6 * M$ 30
N O $%&
* ' ! * +! * '$%&
P - ! 5 1! ! $ ! ! +
O 1 ! & ) "
$%&
$%& *) !
* * ) 3
37 30 *)
M 1 N! $%& "
! )
$%& * =
)" O
! O * &
O
3 $%& ! $& ! = 5 &
' # 5 +! $%& 2
P ! < 2 ! 3 ; ';2 +! < , $%&
! / %! # Q & ! F ) 1
$%& %'& ((--- %& % +
! * . 8 8
J R $%& * '& ((--- %& * *+
6
M % & % &
#' %
% (
% )
"
% %
* +
, + #'
-
) % + .
# &
% ( + #' &
% & ”
A #!(&&.!" "#(& ( *"+&!C
L" " $%& O
! =/5 ; " P - .
!./.# I &< #0# I *"+&!8C9 I $ =/5 1
& !
* " *) !
O " 30 * *)
$%&
; " 5 1 =/5 !
! S%& T &
* 37 5 1)" O $%&
7
C #!(& *"+&!/&0&)0# /#=/)=#(& #C
* " =/5
" ! * "
! *
0 )"
U! .! V ( * 0
>>> a=1
>>> b=2
>>> a == b # == testa se a é igual a b
False
>>> a != b # != testa se a é diferente de b
True
>>> a <> b # <> também testa se a é diferente de b
True
>>> a > b # > testa se a é maior que b
False
>>> a < b # < testa se a é menor que b
True
>>> 2*a >= b # testa se o dobro de a é maior ou igual a b
True
8 * W $%& "
! 1 " 0 1
8
$%& * VV
>>> 2**3 # É o mesmo que 23
(dois ao cubo).
8
>>> 2**(3+6) # Dois elevado a 9
512
L" 4 0 4
>>> 7 % 2 # O resto da divisão entre 7 e 2
1
/ 01123456 7 89
E # .J1 . !#(# # ( /=# #
$%& = O 0
" " . $ & M* N! * .
*) *) !
* A! ! M >N! O
>XA! M >N " $%&
$ * *) ! 30 type(x)!
*) 1
9
>>> valor1=2
>>> valor1
2
>>> type(valor1)
<type 'int'>
$ * 0 M N " M >N O.
2 * M 9N M >N! O
/ O! *) M >N " M 9N'
O & 3 J 6 6 < M & N+
>>> valor1='Boa tarde!'
>>> valor1
'Boa tarde!'
>>> type(valor1)
<type 'str'>
*) $%& 0 .!". & ! K=&#" ' 4 !
& 8 37
30 +! ".!< ' 1 +! =. "# ! ") =# (./.&!J .& $ .
*) !
37 int! float str! ! &
10
# " . & ( 34"&
> ".!<
2 0 *) $%& * & 1
$%& 0 K ! * &
>>> palavra='termodinâmica'
>>> palavra
'termodinxe2mica'
& ‘termodinxe2mica’ $%&
*) M N ! )" 0 &
& 0 ! O "
$ " ! M : N $ !
>>> print palavra
'termodinâmica'
$%& ! K ! 3
K O
K $%& ! 3 3
O 1 * 8 3 Y
K 2 2ZY[
11
>>> palavra[2]
'r'
>>> 2*palavra[0]
'tt'
F * K $ 1 !
K M N 0 3 I >A!
O
>>> palavra[9:12]
'mic'
$ & ! * . 3
$%& ! 0 = !
3 *) S T
" palavra[9:12] 0! . /9
$ 3 ! 4 K
>>> palavra[9:]
'mica'
12
/ ! 3 'H+ I 0
>>> palavra[0:9]
'termodinxe2'
! 3!
>>> palavra[:9]
'termodinxe2'
$ * 3
>>> print palavra[:9]
'termodinâ'
% print palavra[:]9
2 0 ) & K
!
>>> palavra[1:8]
'ermodin'
13
>>> palavra[1:8:2]
'emdn'
0 3 > G!
A ' )! 3 >! C! @ D+ F ) 1
C
>>> palavra[1:8:3]
'eon'
)! 3 >! E D !
8 K " !
>>> palavra[7:0:-1]
'nidomre'
< 4 3 3 D H!
1 1 O ! & K M N "
3 'O +!
30
>>> palavra[7::-1]
'nidomret'
= 3 4 3
14
>>> palavra[:4:-2]
'aixe2i'
'F )" " 1 xe2 M:N! 0 ?+
! 4 3 ! 0 "
K
>>> palavra[::-1]
'acimxe2nidomret'
O )" &
* :
>>> palindromo='socorram me subi no onibus em marrocos'
>>> palindromo[::-1]
'socorram me subino on ibus em marrocos'
" 0 0 !
" * 4 K
R 1 * ! MUN M 30 N!
! 30
1
Palíndromos são palavras ou sentenças que são iguais tanto se lidas de trás para frente quanto no sentido
normal.
15
>>> palavra=palavra+' aplicada'
>>> print palavra
'termodinâmica aplicada'
>>> palavra[14:]
'aplicada'
30 1 * K $%&
len(x)! & K 1
>>> len(palavra)
22
A . "#
; *) 4 $%& *
K ! 1
>>> lista=[1,2,3]
>>> lista
[1, 2, 3]
< 1 ! ! !
! *)
16
K ! 3
)"
>>> lista[0]
1
>>> lista[0]+lista[2]
4
MUN * 30
Z>!A!C[ ZE[' 4 +
J O UE " !  Z>!A!C[
>>> lista=lista+[4]
>>> lista
[1, 2, 3, 4]
>>> lista+4
Traceback (most recent call last):
File "<pyshell#1>", line 1, in -toplevel-
lista+4
TypeError: can only concatenate list (not "int") to list
>>> lista=lista+[0,0,0]
>>> lista
[1, 2, 3, 4, 0, 0, 0]
17
* * 8 3
K " 4 3 * & Z.>[!
4 Z.A[!
>>> lista[-1]
0
>>> lista[2:-2]
[3, 4, 0]
! * & K M N
>>> len(lista)
7
; 8 0 K " !
= O * 8
3 ! 0 O
>>> lista[0] = 'zero'
>>> lista
['zero', 2, 3, 4, 0, 0, 0]
>>> lista[1] = lista[1]+lista[2]
>>> lista
['zero', 5, 3, 4, 0, 0, 0]
>>> lista[2] = lista[0]
18
>>> lista
['zero', 5, 'zero', 4, 0, 0, 0]
>>> a='Boa tarde!'
>>> a[0]='N'
Traceback (most recent call last):
File "<pyshell#3>", line 1, in -toplevel-
a[0]='N'
TypeError: object doesn't support item assignment
<0 & 9 )
"& & 4 ! O
< ! object doesn't support item assignment '
*) 0 * 30 +! *
"
* 30
>>> linha1=[1,2,3]
>>> linha2=[0,-1,1]
>>> linha3=[3,3,3]
>>> matriz=[linha1,linha2,linha3]
>>> matriz
19
[[1, 2, 3], [0, -1, 1], [3, 3, 3]]
>>>matriz[1]
[0, -1, 1]
% matriz[1] " 09
& . O
>>> matriz[1][2]
1
C ) =#
0 *) ! 3 0
" ; O ! 0 1
>>> tupl=(1,2,3)
>>> tupl
(1, 2, 3)
>>> tupl[0]=0
Traceback (most recent call last):
File "<pyshell#10>", line 1, in -toplevel-
20
tupl[0]=0
TypeError: object doesn't support item assignment
* *) ] ! ! !
!
O * $%& !
& M , . , N
>>> a,b = 0,'Deu certo?'
>>> a
0
>>> b
'Deu certo?'
^ O M ; <= 9>
N
" ! *)
>>> a,b=b,a
>>> a
'Deu certo?'
>>> b
0
21
E ./.&!J .&
/ " * 0 ! 0 0 K 0 0
1 K ! 0 2
3 & & * 8 2 *
" ! & ! 0 3
1 "
>>> aurelio={'denomiação':'ilha solteira','população':23000,'renda':1500}
>>> aurelio
{'populaxe7xe3o': 23000, 'denomiaxe7xe3o': 'ilha solteira',
'renda':1500}
< 1 ! ACHHH * 8  & M 30 N $
& ! O
>>> aurelio['vocação']='turismo'
* M N & M 30 N
>>> aurelio
{'populaxe7xe3o': 23000, 'vocaxe7xe3o': 'turismo',
'denomiaxe7xe3o': 'ilha solteira', 'renda': 1500}
* 8 & !
22
>>> aurelio['renda']
1500
/ " 0 " ^ " &
>>> aurelio['renda']=aurelio['renda']+200
>>> aurelio['renda']
1700
$ & "
&
>>> aurelio.keys()
['populaxe7xe3o', 'vocaxe7xe3o', 'denomiaxe7xe3o', 'renda']
>>> aurelio.has_key('idade')
False
>>> aurelio['idade']=33
>>> aurelio.has_key('idade')
True
3 dicionario.items()
' & ! * 8 +
>>> aurelio.items()
[('idade', 33), ('populaxe7xe3o', 23000), ('vocaxe7xe3o', 'turismo'),
('denomiaxe7xe3o', 'ilha solteira'), ('renda', 1700)]
23
# " 7& 0#"#!(&&34"&
> 7& 0#"#$%&( ".!<
$ 1
F ) 1
>>> constante=3.14
>>> print 'O valor de pi é %f' %constante
O valor de pi é 3.14
*
_ "
M N M N 'C >E+!
30 " ! M N
< 1 "
24
>>> nome='abacaxi'
>>> caracteristica='amarelo'
>>> print '%s é uma fruta' %nome
abacaxi é uma fruta
>>> print '%s é %s' %(nome,caracteristica)
abacaxi é amarelo
^ "
! 0
>>> print '%f %ss também são %ss' %(constante,nome,caracteristica)
3.14 abacaxis também são amarelos
/ O
& M N!
M N ! M N M N! M N
M 8 N 0 * _
M N M N " ! ! O
" O M * 1N M N
% <7# >9
= 1 O "
1
25
>>> valor = 3.1415926535897931
>>> print 'O valor é %.2f' %valor
O valor é 3.14
>>> print 'O valor é %.3f' %valor
O valor é 3.141
>>> print 'O valor é %f' %valor
O valor é 3.1415926535897931
= % ! O
" 1 %
>>> print 'O valor é %8.2f' %valor
O valor é 3.14
2 C! !
E 0 0 E 3
* ! G 1
>>> print 'O valor é %12.4f' %valor
O valor é 3.1416
C! 1 B
3 * >A
26
A /) & ( 0#!. )=#$%&( =. "#
>>> a=[1,2,3]
>>> a
[1, 2, 3]
?+ O
! O
>>> a.append('poncan')
>>> a
[1, 2, 3, 'poncan']
>>> a.extend([0,0,-3])
>>> a
[1, 2, 3, 'poncan', 0, 0, -3]
F ) 3 O "
4 ! 4 3
>>> b=[1,2,3]
>>> b.append([1,2,3])
>>> b
[1, 2, 3,[1, 2, 3]]
27
2 O
3 8 ! 2 6 M N
3 O
>>> a.insert(0,'start')
>>> a
['start',1,2,3,'poncan',0,0,-3]
* &" @
J O remove(0) * ! H
/ O M N
>>> a.remove(0)
>>> a
['start', 1, 2, 3, 'poncan', 0, -3
>>> a.remove('poncan')
>>> a
['start', 1, 2, 3, 0, -3]
; : 26
: O 3
>>> a.pop(0)
'start'
>>> a
[1, 2, 3, 0, -3]
28
`" 4 O
$ * 4 O ' O+ MCN M N!
O
>>> a.count(3)
1
`" " ! !
K ! 0 F
30 F ) "
* / O & O
>>> Mohs=['Talco', 'Gipsita', 'Calcita', 'Fluorita', 'Apatita',
'Ortoclásio', 'Quartzo', 'Topázio', 'Coríndon', 'Diamante']
>>> Mohs[::-1]
['Diamante', 'Corxedndon', 'Topxe1zio', 'Quartzo', 'Ortoclxe1sio',
'Apatita', 'Fluorita', 'Calcita', 'Gipsita', 'Talco']
29
# " " : && : # () # &
> !B)#!"&CCC
< * 1 ! M-& N @ 2
! 0 1 'L+ < !
O * 30 & M*N
* 8 M*N >
>>> b=0
>>> while b < 5:
print b
b=b+1
0
1
2
3
4
$ * & 1
) @ $%&
30
0
R O ! * " 0
3 ! * & ; 8
=/5 * O
F * 8 < 6
... b < 5 & )" & * 1 -&
< 6 print b b=b+1! !
=/5 $
< 6 O! 2& * " 0 &"
0 1
F ) * ] O!
>>> b=1
>>> while b < 5:
print '%i dólares valem %.2f reais' %(b,b*2.98)
b=b+1
1 dólares valem 2.98 reais
2 dólares valem 5.96 reais
3 dólares valem 8.94 reais
4 dólares valem 11.92 reais
2 0 8 4 & M N *!
" >! " > a @ !
" &
2
Você também pode encontrar na literatura de Python o termo “endentação”, que significa a mesma coisa. No
entanto, “indentação” é mais utilizado, embora seja um neologismo (já incorporado por alguns dicionários da
língua portuguesa).
31
1 dólares valem 2.98 reais
2 O ! * 65U ' =/5 +
!
b+=1! b*=2 b+=n b=b+n! b*=n
b=b*n
A !"#(# ( (#(&
F ) " $%&
>>> x = raw_input('Informe a fase: ')
Informe a fase: vapor
>>> x
'vapor'
30 $! 26 "
3 0 ! 30
$ . ! *
30 * ! O M1N
! O ! $! 26
F ) "
32
>>> a = raw_input('Tamanho do lado do quadrado: ')
Tamanho do lado do quadrado: 23
>>> print 'O perímetro deste quadrado é', 4*a
O perímetro deste quadrado é 23232323
>>> type(a)
<type 'str'>
* ! 8 AC 0 23232323
30 E O
2 " !
$! 26 *) ) 37
#
>>> a = raw_input('Tamanho do lado do quadrado: ')
Tamanho do lado do quadrado: 23
>>> a = int(a)
>>> type(a)
<type 'int'>
>>> print 'O perímetro deste quadrado é', 4*a
O perímetro deste quadrado é 92
!
>>> a = int(raw_input('Tamanho do lado do quadrado: '))
33
Tamanho do lado do quadrado: 23
>>> type(a)
<type 'int'>
! 30 *)
# 2+6
>>> r = float(raw_input('Raio: '))
Raio: 4.5
>>> type(r)
<type 'float'>
C KCCC =.KCCC = CCC
< * 1 ! M1N M 8 N
7
2 ! M >HHb N
7
2 0 ! M1N 0 M 8 N! M N! M >HHb N
M1N 0 ) M 8 N M N! M Hb N
34
30 30 ) ) + )
M 8 N " & #
>>> x = raw_input('Informe a fase: ')
Informe a fase: vapor
>>> if x == 'líquido':
print 'Menos de 100º C'
elif x == 'vapor' :
print 'Mais de 100º C'
else:
print 'Menos de 0º C'
Mais de 100º C
F & " CH! )" 0
O " 'M> N+
>>> b = 1
>>> while b < 4:
if b==1:
print '%i dólar vale %.2f reais' %(b,b*2.98)
else:
print '%i dólares valem %.2f reais' %(b,b*2.98)
b+=1
35
1 dólar vale 2.98 reais
2 dólares valem 5.96 reais
3 dólares valem 8.94 reais
E 7&
# $%& 8
# ! M N K ' ! ! +
"
>>> a = ['João', 'Rafael', 'Douglas']
>>> a
['Joxe3o', 'Rafael', 'Douglas']
>>> for i in a:
print i
João
Rafael
Douglas
>>> for x in a:
print '%s tem %i letras' %(x,len(x))
João tem 4 letras
Rafael tem 6 letras
Douglas tem 7 letras
36
M$ 1 N. M1N
K 1 / ! +
K " $ ! M1N M`0 N
' + ^ x len(x)
M`0 N 'S`0 T+ 2 ! 0 ?$ 8
1
; 30 # 30 2 # 6!
3 # :!
4
>>> range(1,11,2)
[1, 3, 5, 7, 9]
! # 4 $
O >!
>>> range(10)
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> range(1,11)
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
>>> for elefante in range(5):
print elefante**2
0
1
4
9
37
16
# * K 2A6 $ *
& K % % ! '*O +
M N
& K ' & C+ 4 ! 0 0 &"
* 30 * ' + < !
236
>>> for i in range(len(a)):
print i
0
1
2
4
3 K $%& * 4
>>> for i in range(len(a)):
print i,a[i]
0 João
1 Rafael
2 Douglas
38
< )" * 30
* 37 O 30 *
#
*
>>> matriz = ((1,0,0),(0,1,0),(0,0,1))
>>> for i in range(len(matriz)): # é o mesmo que range(3), ok?
print 'n'
for j in range(len(matriz)): # idem
print matriz[i][j],
1 0 0
0 1 0
0 0 1
print 'n' & * $ O print
'n'*k , & *
< 1 ! 8 & print
&
# * " !
& " &
1
39
>>> orçamento = {'asa':1200,'combustível':200,'motor':4500}
>>> for qualquer in orcamento:
print qualquer
combustível
asa
motor
% % & " 2
!
>>> for teste123 in orcamento:
print teste123,'custa R$',orcamento[teste123]
combustível custa R$ 200
asa custa R$ 1200
motor custa R$ 4500
$ 1 )" :03 & !
c * 8 c! & " !
O orcamento[teste123] O orcamento['combustível']!
" &
40
B ( % dicionario.items()
2 6 -
& ( #
C 9 D %
% % %E(
@ #M
* * $ #
F * M_N? 0
* 1 O ZA!C!E!@!B! ! .>[
8 2 8 ' )! _ XX H+! 0
0 4 #
>>> n = int(raw_input('Número a testar: '))
Número a testar: 28
>>> for i in range(2,n):
if n % i == 0: print 'Número não primo'; break
Número não primo
&"#L 2 1
& ! .
8 ! O * #
* # ! $ 37 37
41
* * $
>>> b=10
>>> while 1:
b=b-1
print b
if b<7: break
9
8
7
6
* 30 while 1: ;
1 F .
" * ! & "
loop1:
blablabla
blebleble
loop2:
bliblibli
blobloblo
break2 # Cancela somente o loop2
break1 # Está alinhado com o loop1, portanto cancela somente loop1.
42
B #"#0 !"&( &
< 37 *
K 0 " ! K
"
< 1 ! & C
" " 0 " ?
>>> lst=[]
>>> for nome in range(3):
lst.append(int(raw_input('Digite um valor: ')))
Digite um valor: 33
Digite um valor: -4
Digite um valor: a
Traceback (most recent call last):
File "<pyshell#26>", line 2, in -toplevel-
lst.append(int(raw_input('Digite um valor: ')))
ValueError: invalid literal for int(): a
30 '% % + 0 d ST
' 9+ 0 " 3
0 ?;
43
>>> lst=[]
>>> for i in range(3):
while 1:
try:
lst.append(int(raw_input('Digite um valor: ')))
break
except:
print 'Digite somente números!!!'
Digite um valor: 2
Digite um valor: a
Digite somente números!!!
Digite um valor: r
Digite somente números!!!
Digite um valor: t
Digite somente números!!!
Digite um valor: 33
Digite um valor: e
Digite somente números!!!
Digite um valor: w
Digite somente números!!!
Digite um valor: -4.99
>>> lst
[2, 33, -4]
44
1
"*L
O
) & ' 30 ! * ?+
*
E/ "L
& * % !
0 0 1 &
< 1 ! 
$! ! 4 30 26 2
! 30 0 " ". 8 30
* M 1 N! "
4 * !
% & " . 2 0 &
O! 1 & ! M* ,N! "
* 8?<0 O ! 0
1 K 236!
! & "
2 " O ! * 1
O ! )" 0 &" O !
1] 0 8 ! 0 8
45
>>> x = int(raw_input('Digite um número inteiro: '))
Digite um número inteiro: -3
>>> while x<3:
try:
print 1./x
except:
print 'Não é possível dividir 1 por %i' %x
x=x+1 # Também pode ser x+=1
-0.333333333333
-0.5
-1.0
Não é possível dividir 1 por 0
1.0
0.5
: F+ % + # " G (#
9
* * 3 >(C > (C !
0 ! H < !
0 > ' > H+ C!
! H CCCCCCCCCCCCCCCC> 2 ! *
30 )
46
>>> 1+2
3
>>> 1+2.0
3.0
>>> 2*9
18
>>> 2*9.
18.0
>>> 1/3.
0.33333333333333331
# " & & .0 . & &< #0# /&0 ="&
F $%& * ]
* 1 0 0 3 30
; " =/5 !
=/5 ! *
"
$ ! " 7.= I N
N.!(&N =/5 ! 65U<
' 0 3 1 0 9+!
0 ! #! # $ 0
) " & .
47
3 . ! " 8 18
R ! " )! I )! &()=!
J@
F O 4 "
/O 4 
4 ! 1 ! B 'BX>UAUC+
# perfeitos.py
n = int(raw_input('Digite o número a ser testado: '))
teste = 0
for i in range(1,n):
if n % i == 0:
teste=teste+i
if teste == n:
print n, 'é um número perfeito'
else:
print n, 'não é um número perfeito'
F
D :H " =
! * 30 $! !
30 ! 0 *
D 0H; O 0
" O
48
! " 2
! 4
D 3H ,! 0 2 *
0 K '>! + '
)" 1 K Z>!A!C!E! ! .>[! 0 ?+ 0 *
O ' ! # + * 2: 6
0
D IH2 K ! 0
D AH . 9
D 5H * $ *
& # 2 30 !
0 " 1 K 0
! * M N!
D 8H= " 1 M N )
' )!  4 !
+
D JH2 0 ! ' M N 0  +
D KH 0 4
1 ' J@ ) " +!
>>>
Digite o número a ser testado: 6
6 é um número perfeito
49
F ) " J@
!
>>>
Digite o número a ser testado: 7
7 não é um número perfeito
& J@ & ! 0 ?
'while 1:! 1 +! 1 O
while 1:
o código aqui (indentado corretamente)
? #
H& G @D4G
G ( #
# # (
'
C 9
G ( ' %
C # & 59 . (
2 6 # "
% 3 C # %
+ &:;;;; & 5
50
F * 1 8 !
/ ! 0 " 1 =/5 !
* O ; & 1 30
) * &
! 0 " 8 ;
. * " ) &
raw_input(‘Pressione ENTER’)
! )" $! " 2
" < 6 ! 0 ! )"
30 0 "
$ =/5 ! * 8 * 0
& M =/5 N
3 1#$%&L 5 1' * 9+! "
& 3 O30
$%&
#!/usr/bin/python
&
/usr/bin/python <
$%&
" 5 1>H H
! 5 1!
* 30 $
? ! )" $%&
51
# " 7)!$@ A()=&
> K.!.!(&K)!$@
! 37 4 1
* " " O ! O &
R 0 ! *
30 ! &
37 1 37 $%&
def nome_da_funcao(parametro1,parametro2,...):
operacoes sobre os n parametros
= ) " 4 " O
$ 30
>>> def f(x):
return x**2
>>> f(3)
9
52
30 ! O
>>> def elevar(x,y):
return x**y
>>> elevar(9,9)
387420489
L" 37 * & 4
! 1
def nome_da_função(*nome1):
procedimentos...
1
*
>>> def impressora(*argumentos):
return argumentos
>>> impressora(1,2,3)
(1, 2, 3)
53
" >! A C 0
30 !
* & ! )" )
>>> def somatoria(*argumentos):
soma = 0
for i in argumentos:
soma+=i # Você já sabe: soma+=i é o mesmo que soma=soma+i
return soma
>>> somatoria(1,2,3,4,5)
15
30 . " )
! 0
30 ! 1 !
>>> somatoria(1,2,3,4,'teste')
Traceback (most recent call last):
File "<pyshell#27>", line 1, in -toplevel-
somatoria(1,2,3,4,'teste')
File "<pyshell#25>", line 4, in somatoria
soma+=i
TypeError: unsupported operand type(s) for +=: 'int' and 'str'
54
= 30 0 O
c c
- %
( # #
' % # ' 9 ?
L & % &
' 2 6
37 0 37 *
>>> def testa_primo(n):
teste=1
for i in range(2,n):
if n % i == 0:
teste=teste+1
if teste != 1:
print 'Número não primo'
else:
print 'Número primo'
>>> testa_primo(28)
Número não primo
>>> testa_primo(7)
Número primo
55
<0 &" * 30 30
! 'C+ I : 30
>>> elevar(f(3),4)
6561
F !
30 " 30 0 3
>>> def user(nome='Labaki'):
print 'Meu nome é',nome
>>> user('Mamute')
Meu nome é Mamute
>>> user()
Meu nome é Labaki
1
>>> cadastro=[]
>>> def add(x,y='Casado',z=3):
cadastro.append([x,y,z])
>>> add('Mozart','Solteiro','sem filhos')
>>> cadastro
56
[['Mozart', 'Solteiro', 'sem filhos']]
>>> add('Beethoven')
>>> cadastro
[['Mozart', 'Solteiro', 'sem filhos'], ['Beethoven', 'Casado', 3]]
>>> add('Bach','Viúvo')
>>> cadastro
[['Mozart', 'Solteiro', 'sem filhos'], ['Beethoven', 'Casado', 3],
['Bach', 'Vixfavo', 3]]
2 % 0 O!
>>> add('Salieri',z=4)
>>> cadastro
[['Mozart', 'Solteiro', 'sem filhos'], ['Beethoven', 'Casado', 3],
['Bach', 'Vixfavo', 3], ['Salieri', 'Casado', 4]]
$ " ! O
O 30 ! .
37 * 37 20 & M N
>>> def f(x):
"""Esta função retorna o
quadrado de um número"""
return x**2
>>> f(2)
57
4
>>> print f.__doc__
Esta função retorna o
quadrado de um número
A 7)!$@ &3 BOP!/.#
2 K 30 *
! &" * " O ; 30 !
30 * K
< 1 * 1 ! %E( :
# :
map(função1, seqüência1)
>>> def quadrado(termo):
return termo**2
>>> elementos=[1,2,3,4,5,6]
>>> map(quadrado,elementos)
[1, 4, 9, 16, 25, 36]
*
= * 37 0 *
58
>>> orcamento={'asa':1200, 'combustível':200, 'motor':4500}
>>> def cambio(componente):
print componente[0],'R$ ',componente[1]
print componente[0],'US$ ',componente[1]/3.
print 'n'
>>> map(cambio,orcamento.items())
combustível R$ 200
combustível US$ 66.6666666667
asa R$ 1200
asa US$ 400.0
motor R$ 4500
motor US$ 1500.0
[None, None, None]
1 30 * )" orcamento.items()
!
>>> orcamento.items()
[('combustxedvel', 200), ('asa', 1200), ('motor', 4500)]
59
30 * K *
< ! 30 " ! ('combustxedvel', 200)
30 O componente[0]! O
('combustxedvel', 200)[0]! c * 8 c!
componente[1] cAHHc K
& [None, None, None] 1 30
8 0 *
##
30 30 . K !
30 K 4 ! 1 2#
%E( 6
>>> def soma(alfa,beta):
return alfa+beta
>>> reduce(soma,[1,2,3])
6
$ ! Z>!A!C[' >+
# 30 ! ' A+
6 >UA X C C 0
# 1 ' C+
6 CUC X B K
?
# C & # 9
G ( % 9
60
1
>>> def eleva(base,expoente):
return base**expoente
>>> elementos=[4,3,2,1]
>>> reduce(eleva,elementos)
4096
/ !
3# E & !" 3# QQ E & !" )="#(&
.0 . & # & E C EVVC BE
<)!(& # & BE A BEVVA EHIB
/ . & # & EHIB > EHIBVV> EHIB
)="#(& EHIB
; * & 37 K 8
$%& 0 ! 37
>>> [x**2 for x in [1,2,3]]
[1, 4, 9]
61
4 3 O .
+! + K Z>!A!C[ * 1 !
' ! +!
K ZH! >! A! C! E[
>>> [(x,x**2) for x in range(5)]
[(0, 0), (1, 1), (2, 4), (3, 9), (4, 16)]
! & 37 0 *
* * 0 30 0
" ! & )
>>> ['%ss' %nome for nome in ['Proclise','Jilo','Bozo','Cauchy']]
['Proclises', 'Jilos', 'Bozos', 'Cauchys']
* & K K
>>> valores=((4,5,6),(7,8,9),(5,6,-7))
>>> [a+b+c for (a,b,c) in valores]
[15, 24, 4]
! >@ X EU@UB! AE X DUGUI E X @UB.D
! * # 37
62
>>> def metade(t):
return t/2.
>>> map(metade,[rrr*2 for rrr in [66,77,88,99]])
[66.0, 77.0, 88.0, 99.0]
< 1 ! [rrr*2 for rrr in [66,77,88,99]] Z>CA! >@E!
>DB! >IG[ 0 30 30
A!  " !
O ! 30
*
>>> [metade(rrr*2) for rrr in [66,77,88,99]]
[66.0, 77.0, 88.0, 99.0]
C ") !1 ) .( KK/"
[None, None, None]
" ???
5" " )" * 30 30
) 4 )
$ & 37 0 '
" ! '1+ X >(1 0 1 1XH+!
30 " 4
63
8  37 $%& < 37
0
!
def nome_da_função(argumento_1,argumento_2,...,argumento_n):
return parâmetro
< 30 ! '4 + M *
30 )" & ! :
>>> def f(x):
return x**2
>>> f(3)
9
R 30 ! ! ! ! 0
! ## ' +
>>> lista=[]
>>> def f(x):
lista.append(x)
print x
return x**2
64
>>> f(2)
2
4
>>> lista
[2]
! A A  0 ## E
30 = *
1 30 30 ! 1 * 1
>>> 2*f(9)
9
162
>>> lista
[2, 9]
'I+ 4 " * ! G> X
IVVA 2 30 # ' GI+ A!
>BA ## 0 30 I

R 0 & !
30 N < ! 30 *
1 30 30
>>> def h(t):
print t**3
65
>>> h(7)
343
>>> 2*h(7)
343
Traceback (most recent call last):
File "<pyshell#38>", line 1, in -toplevel-
2*h(7)
TypeError: unsupported operand type(s) for *: 'int' and 'NoneType'
8 ! )" 0 O N A
[None, None, None]! !
30 " @G! *
26
< " 1 8 &" *
* 3 ##
1 30 1 ".
/ % # ,
-e % &
F ## .#
+ +
# %E( O #
&
## #
66
E A()=&
7 ! " 37 " O
R ! ! 0
M N 37
F ! 37
8 ! " 8 !
* 30 4
* ) < =/5 ! " 7.= I N R.!(&N!
65U< / 37 . 1 0
" ) ) 3
$ *
0 &! '
" & 8 +
>>> import sys
>>> for i in sys.path:
print i
&
#circulos.py
def perimetro(r):
"""Esta funcao calcula o perimetro de
3
Sem muito rigor, o path é uma relação de todos os diretórios em que Python vai procurar pelo seu módulo.
Se você quiser, pode salvar seu módulo na pasta Python23, em C:, que certamente estará no path. No entanto,
evite salvar todos os seus módulo lá, para não sobrecarregar este diretório.
67
um circulo de raio r."""
try:
r=float(r)
return 2*3.14*r
except:
print 'O argumento da funcao deve ser um numero.'
def area(r):
"""Esta funcao calcula a area de
um circulo de raio r."""
try:
r=float(r)
return 3.14*(r**2)
except:
print 'O argumento da funcao deve ser um numero.'
def potencia(x,y=2):
"""potencia(x,y) eleva x a potencia y.
Default: y=2."""
try:
return x**y
except:
print 'Argumentos invalidos'
def nada():
"""Esta funcao nao faz nada.
68
So serve para mostrar doc strings."""
pass
%& J@ 1 9 $ & ) !
* ) =/5 ' O )
! )!I *"+&! + ==+ 37
>>> potencia(2,3)
Traceback (most recent call last):
File "<pyshell#9>", line 1, in -toplevel-
potencia(2,3)
NameError: name 'potencia' is not defined
30 0 " ;
37
>>> import circulos
2 ($%& AC
) &! 30 ; O !
1 O.
# 2 M 6
69
! O 30
>>> circulos.potencia(2,3)
8
>>> print circulos.potencia.__doc__
potencia(x,y) eleva x a potencia y.
Default: y=2.
>>> print circulos.nada.__doc__
Esta funcao nao faz nada.
So serve para mostrar doc strings.
>>> circulos.perimetro(33.)
207.24000000000001
>>> circulos.outrafuncao(1,2)
Traceback (most recent call last):
File "<pyshell#6>", line 1, in -toplevel-
circulos.outrafuncao(1,2)
AttributeError: 'module' object has no attribute 'outrafuncao'
0 1 30 #
70
37 . ! O
$ * ! * ) =/5
from módulo import função1, função2, ...
2 37 !
>>> from circulos import potencia,nada
>>> potencia(2,3)
8
>>> potencia(3)
9
>>> print potencia.__doc__
potencia(x,y) eleva x a potencia y.
Default: y=2.
>>> nada()
; 1
from modulo import *
0 37
71
>>> from circulos import *
>>> perimetro(4.2)
26.376000000000001
>>> area(-1.)
3.1400000000000001
>>> print area.__doc__
Esta funcao calcula a area de
um circulo de raio r.
; $%& &
* $ $%& .
0 M N! ! O
3 )" 1
3 3 ! O)"
& ! # 9 'N
# $%& 9+
< 37 ! 1 ! C >E
* 0#"+
>>> import math
>>> pi
Traceback (most recent call last):
File "<pyshell#1>", line 1, in -toplevel-
pi
NameError: name 'pi' is not defined
>>> math.pi
72
3.1415926535897931
>>> from math import pi
>>> pi
3.1415926535897931
37 "
>>> from math import sin,cos
>>> sin(pi)
1.2246063538223773e-016
>>> cos(pi)
-1.0
>>> sin(cos(sin(pi)))
0.8414709848078965
>>> from math import *
>>> log(1) # o “log” usado aqui é o logaritmo neperiano (base e)
0.0
>>> log10(2) # log10, por sua vez, é o logaritmo de base 10.
0.3010299956639812
>>> pow(2,4)
16.0
>>> print pow.__doc__
pow(x,y)
Return x**y (x to the power of y).
73
* &" * & 4
1 ! < 3 & (( %& ( 1&
30 30 )" 0
8 $%& < 8 8
! 30
0 & /
& " BB "
&
@ 0 &)/&( "& .#L /& &
7 ! !
! *) )" 0
< ! & & ?R
: 30 ?
& & ' + =&/#.
<=&3#. 3).=".! ! 37 !
! )"
O $%&
F )
>>> x=1000
>>> def f(x):
return x**2
>>> x
1000
>>> f(9)
74
81
>>> x
1000
+ & * ! +
30 # R 1 #2 :6!
+ : :;;; R
& " & < ! 1 X
: ' 30 +! 1X >HHH * '
+ & O & 3 :
+ O
' :+VVA / ! " + 1
* + ! >HHH
1 !
>>> type(12)
<type 'int'>
>>> def type(m):
print 'Digitastes',m
>>> type(12)
Digitastes 12
>>> def tipologia(x):
def type(y):
print 'Você digitou',y
type(x)
75
>>> tipologia(12)
Você digitou 12
>>> type(12)
Digitastes 12
! 8& *) ! *)
/ * 30 1
! 30 ' O ! +!
! 30
30 ! 30 0 * # * !
M/ N! * 30 
2 0
! * 2 *
0 * ! 4 * * 2
0 0 F ) 1 /
30 ! * * ! '
30 + < 30 ! 0 !
* 4 & . M * cc 0 N
>>> from math import pi
>>> r=2.3
>>> def area(incremento):
return pi*(r+incremento)**2
>>> area(.7)
28.274333882308138
>>> def volume(inc):
76
return (pi*(t+inc)**3)/3.
>>> volume(.4)
Traceback (most recent call last):
File "<pyshell#108>", line 1, in -toplevel-
volume(.4)
File "<pyshell#107>", line 2, in volume
return (pi*(t+inc)**3)/3.
NameError: global name 't' is not defined
$ )" ! 0 8 *
! .
30 ! 1  30
* * "
>>> def volume(inc):
t=0.6
return (pi*(t+inc)**3)/3.
>>> volume(.4)
1.0471975511965976
>>> t
Traceback (most recent call last):
File "<pyshell#112>", line 1, in -toplevel- t
77
NameError: name 't' is not defined
2 " 30
! 8 ". *
>>> def volume(inc):
global t
t=0.6
return (pi*(t+inc)**3)/3.
>>> volume(0.4)
1.0471975511965976
>>> t
0.59999999999999998
/ . "
* *
* )" 1 $ ! 1
from modulo import *
37 ! 0
O 37 !
& !
= & ) 30
78
' * 30 M 1 N+!
!
>>> def sin(pronome):
print 'Dê-%s ajuda!' %pronome
>>> sin('lhe')
Dê-lhe ajuda!
>>> from math import *
>>> cos(pi)
-1.0
>>> sin('me')
Traceback (most recent call last):
File "<pyshell#131>", line 1, in -toplevel-
sin('me')
TypeError: a float is required
30 & 30
" &
1 2 6
79
# " =<)! ")B) CCC
> #!. )=#$%&( # B).1&
2 1 30
! ". 30
* 1 O 30
open(‘endereço/nome_do_arquivo.extensão’,’modo_de_abertura’)
* 0
* 'M N ! +]
# * 'M N ! 1
+]
N * 'M-N $ ! . +
4 9 $
*
$ * & ! 30
* ! * & ! * &
30 $ 1 ! & !
abertura.close() open('c:/tabela.txt','w').close()!
>>> abertura=open('c:/tabela.txt','w')
80
S).(#(& 1 & ! "
)" 0 & * 1 2 ! 4 "
9
F" G ) * * 1 $
& ! .
>>> abertura.close()
<0 3 * * & !
& . O 2 0 & !
*) $%& 2
* 1 1 abertura.close()! "
30 & 2 * .
1 ! 0 " *
F * ! O
" O ! ! . !
>>> abrindo=open('c:/tabela.txt','a')
$ * )" 1 ! 0 ?
$ * ! $ 26!
>>> abrindo.write('Tabela de dólaresn')
; 30
81
>>> abrindo.write('%sn' %'Tabela de dólares')
= 3 )" ! 30
0 print! *
& / 37 $ $! ! 1 &9 ^ *
* 'n' &
? . % + % '
GH + %
P L Q B ( % 9 .
' '
>>> abrindo.close()
>>> vamosdigitar=open('c:/tabela.txt','a')
>>> for i in range(100):
vamosdigitar.write('%i dólares valem %f reaisn' %(i,i*2.98))
>>> vamosdigitar.close()
/ & 4 S * 1T
; 4
>>> abertura=open('c:/tabela.txt','r')
82
L" 4 . *
4 & & R * ! ''!
O
>>> abertura.readline()
'Tabela de dxf3lares0'
>>> abertura.readline()
'0 dólares valem 0.00 reais'
>>> abertura.close()
! ! 4 ]
& 6
! )" * * & *
>>> w=open('c:/tabela.txt','r')
>>> lst=w.readlines()
>>> print lst[0]
Tabela de dólares
>>> print lst[-1]
44 dólares valem 131.1
F + !
30 2 1 !
1 ! 1 "
83
! " !
1 30 / 2! !
/! !
A A()=& E !(&!& . "0# #/.&!#=
R ! !
1 30 8 *
" ? ! 37
! ) ! 30 O #
>>> import os
>>> atalho=os.startfile
>>> atalho('c:/tabela.txt')
< & ! & M N * 8
! ' + ( 37 O30
& 0 os.startfile('c:/tabela.txt')
2 1 " ' + 1 +!
" 1
1
/ 2! &
! " 5 1
>>> import os
>>> a=os.system
84
F * * 1
>>> a('c:/tabela.txt')
0
* . * ' 9+
>>> a('format c:')
/ 1 !
" ($%& AC!
1
& *  ! S I !
1 ! *
< 1 !
• % ($%& AC! 0 0
"]
• %
% " ($%& .< !
M< N ]
• 1 * " 30
<0 3 ]
O < 1 ! " % #
85
' 4 + "
$ & . M N!
M N!
#instalar.py
import os
comando=os.system
comando('copy a:meumodulo.py c:Python23')
NOME=raw_input('Seu nome: ') # Linha 4
NOME='Python-'+NOME
comando('md c:''+NOME) # Linha 6
comando('copy a:meuprograma.py c:''+NOME)
abrir=os.startfile
abrir('a:/leiame.txt')
* 1 30 * & B / 2
M N < G &
M$%& .< N] M< N " &
4 8 ! )" "
! & ! . T
! * " 30
. & ( ? < >%
L % (
86
C .0 #!(&0
F & 1 30
&
! 30
>>> import time
>>> time.asctime()
'Thu May 20 11:35:40 2004'
>>> time.localtime()
(2004, 5, 20, 11, 36, 45, 3, 141, 0)
`" ) 3 ! 0 !
! O
>>> salve=time.localtime()
>>> print 'Hoje é',salve[2],'do',salve[1],'de',salve[0]
Hoje é 20 do 5 de 2004
`"
& ! 0 8 ! " !
* & , $
1 30 !
&
87
>>> from time import time
>>> t0=time()
!
>>> print 'A execução durou', time()-t0, 'segundos'
A execução durou 50.6560001373 segundos
4 O ) /
0
K ! & 4 H >
>>> import random
>>> sorteio=random.choice
>>> a=[]
>>> for i in range(10):
a.append(raw_input('Nome dos candidatos: '))
Nome dos candidatos: Woiski
Nome dos candidatos: Barata
Nome dos candidatos: Labaki
Nome dos candidatos: Bestinha
Nome dos candidatos: Osvaldo
Nome dos candidatos: Fred
Nome dos candidatos: Thiago
88
>>> a
['Woiski', 'Barata', 'Labaki', 'Bestinha', 'Osvaldo', 'Fred', 'Thiago']
>>> sorteio(a)
'Fred'
>>> sorteio(a)
'Ricardo'
>>> sorteio(a)
'Labaki'
& )
F ) 'ℜ ∈ ZH!>[+
* & ! !
>>> import random
>>> num=random.random
>>> num()
0.8077947641664176
>>> num()
0.23901444156442075
>>> int(100*num())
43
>>> for i in range(5):
print int(10*num()),
0 5 3 9 4
89
E *"+&! )"&S L 3&! #0.<&
L" / 1 30
1
O 1 0
/ &
! * 1 & / *
. ! " / &&= I )! / . "CCC!
f
Line
0,0
10,0
10,10
0,10
0,0
$ ! 8 * &
* 2 0 & * ! &
! &  1 $ !
& * ! < 6
& & ! )! &
M N
$ & ! 1 g 1 ' T
+
; O &
90
rectangle
0,0
10,10
^ " < 6 M>H!>HN ^
< 6 &
:
`" * &
& @H M N * " ?
F "
]
8 * & $%& )" *
! 0
:
; 37 * 1
#retangulos.py
import math
raiz=math.sqrt
A=float(raw_input('Area inicial: '))
w=open('c:/nosso_script.scr','w')
for i in range(1,51):
a=raiz(A)
w.write('rectanglen')
pontoi=str(-a/2)+','+str(-a/2)+'n'
pontof=str(a/2)+','+str(a/2)+'n'
91
w.write(pontoi)
w.write(pontof)
A=2*A
w.write('Zoomn')
w.write('Extentsn')
w.close()
D IH e
D 5HM N !  O
" " "
D 8H /! M N
&
D JH : 30
(A 8 !
% !
& 'Sh T+ J 3 =/5 "
& $ " ' + AH!
'-2.2360679775,-2.2360679775n'
D KH !
0 ' (A! (A+
D :;H : ')"
& +
D ::H
D :0H/ " 1 #
: & & * "
92
D :3 :IH< & ! ) : &  !
O30
@ *
( # " '
@ U ./#:0# "&
" ! 0 " d !
$ ! 0 ?
winsound! ! Beep(freqüência,duração)!
# %E( K ! L O! CD CADBD! 30
* : 4
>>> import winsound
>>> b=winsound.Beep
>>> b(1000,1000)
>>> b(500,500)
?
$ 4 30 26 ! "
$ " 2 < !
93
>>> import time
>>> s=time.sleep
>>> for i in range(1,5):
for j in range(1,5):
b(100*j*i,50)
s(0.01)
s(0.01)
/ ' " 2: A6
' 2I69 +
L
B S#=!(#
* & !
26! 1 ! * 1 E
>>> import calendar
>>> calendar.isleap(2004)
True
>>> calendar.isleap(2055)
False
4
Leap year: Ano Bissexto.
94
2+ 6
' . X>! 3. XA! + 3 % 1
>>> calendar.monthrange(2004,5)
(5, 31)
4 ! 2+ 6! *
" + $ 0
2 ! 8
>>> calendar.prmonth(1922,2)
February 1922
Mo Tu We Th Fr Sa Su
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28
95
# " E 0 =& 2
! .
" * & ".
L" " * &
56C5C #3#=+#!(&/&0 K)!$@
& * 4 " O "
* 8 ! 0 ! 0 !
*
* 37 ! * 0 "
def testa_par(x):
if x % 2 == 0:
print x,'é um número par'
else:
print x,'é um número ímpar'
def testa_primo(valor):
teste=0
for individuo in range(2,valor):
if valor % individuo == 0:
5
Não perca tempo digitando estes exemplos: eles estão disponíveis para download em http://labaki.tk
96
teste=teste+1
if teste <> 0:
print valor,'não é primo'
else:
print valor,'é primo'
def testa_perfeito(gretagarbo):
verifica=1
for qualquerum in range(1,gretagarbo):
if gretagarbo % qualquerum == 0:
verifica=verifica+qualquerum
if verifica == gretagarbo:
print gretagarbo,'é perfeito'
else:
print gretagarbo,'não é perfeito'
def procura_divisores(n):
lista_de_divisores=[]
for i in range(1,n):
if n % i == 0:
lista_de_divisores.append(i)
if len(lista_de_divisores)==0:
print n,'Não tem divisores'
else:
print 'Divisores de',n,':'
for i in lista_de_divisores:
97
print i,
def soma_algarismos(n):
n=str(n)
while len(n)>1:
m=0
for i in n:
m=m+int(i)
n=str(m)
print n
n=int(raw_input('Digite o número a ser analisado: '))
testa_par(n)
testa_primo(n)
testa_perfeito(n)
procura_divisores(n)
soma_algarismos(n)
" * 30 soma_algarismos &
30 !
K & 'while len(n) > 1+!
' & 30 +
R '
while 1: % ' C
# 9
98
56C8C /#"/+V0#.= #3#=+#!(&/&0 ".!<
* "
& * .
M$ N 0 M N! &
" 3 . * 1
" & 3 . ! . )"
&
; 3 *
+ " 3
1 30
try:
w=open('c:/mailcollection.txt','a')
except:
w=open('c:/mailcollection.txt','w')
lista=raw_input('Mail: ')
lista=lista.split()
for i in range(len(lista)):
lista[i]=lista[i].replace('<','').replace('>','').replace(',','')
mail=[]
for i in range(len(lista)):
if lista[i].__contains__('@'):
mail.append(lista[i])
for i in range(len(mail)):
mail[i]=mail[i]+','
print 'Enderecos capturados:n'
99
for i in mail:
print i,
w.write(i)
w.close()
& . * &
' *) J- ! 6 ! +! 65U
65U
M N F 3 0 ?
F " * *
+ ! " )" O 2
' "! 0 1 +! 0
< 1 & ! 2$6!
$ $
3 *
>>> 'araraquara'.split('a')
['', 'r', 'r', 'qu', 'r', '']
S T ST
!
>>> a='Boa tarde!'
>>> a.split()
['Boa', 'tarde!']
100
`" & 2 6 *
S*T ST
>>> a='Boa tarde!'
>>> a.replace('Boa','Péssima')
'Pxe9ssima tarde!'
J ! & >> % : !! !!2 :6
&" : % :
>>> a='Good Night Vietnam'
>>> a.__contains__('Vie')
True
>>> a.split().__contains__('Vie')
False
>>> a.split()
['Good', 'Night', 'Vietnam']
>>> a.split().__contains__('Vietnam')
True
56C9C S#( .# ( =. "#
O "
' >>! >A! ! +
101
& ! & 3 ! 4
!
ordem=int(raw_input('Ordem da matriz: '))
matriz=[]
print 'Digite os termos da matriz A'
for i in range(ordem):
matriz.append([])
for j in range(ordem):
termo='A'+str(i+1)+str(j+1)
matriz[i].append(float(raw_input('Termo'+termo+': ')))
print 'n'
print 'Matriz An'
for k in range(ordem):
for w in range(ordem):
print '%7.2f' %matriz[k][w],
print 'n'
< * # $ !
for i " & O ' ! O + for j
' 1 30 9+
& for i & * ' print 'n' *
" * for i+ `" & print 'Matriz An' 0 "
0 " 30 #
30 * 4 * # 4 &
0 1 , * for w
102
& O' 1 $ ; :+ 0 for
w! & * 1
56C>C ./.&!J .& &!
1 * O
from winsound import Beep
from time import sleep
print 'Escolha a velocidade de tradução'
print 'Rápido (1)'
print 'Lento (2)'
if int(raw_input('Velocidade: '))==1:
vel=0.4
else:
vel=1
texto=raw_input('Texto a ser traduzido (minúsculas, sem acentos): ')
morse={'m': '--', ',': '--..--', '.': '.-.-.-', '1': '.----', '0': '-----
', '3': '...--', '2': '..---', '5': '.....', '4': '....-', '7': '--...',
'6': '-....', '9': '----.', '8': '---..', '?': '..--..', 'a': '.-', 'c':
'-.-.', 'b': '-...', 'e': '.', 'd': '-..', 'g': '--.', 'f': '..-.', 'i':
'..', 'h': '....', 'k': '-.-', 'j': '.---', 'l': '.-..', 'o': '---', 'n':
'-.', 'q': '--.-', 'p': '.--.', 's': '...', 'r': '.-.', 'u': '..-', 't':
'-', 'w': '.--', 'v': '...-', 'y': '-.--', 'x': '-..-', 'z': '--..', '
':'n'}
for i in texto:
print i,morse[i]
for j in range(len(morse[i])):
103
if morse[i][j]=='.':
Beep(500,50*vel)
sleep(0.1*vel)
elif morse[i][j]=='-':
Beep(500,150*vel)
sleep(0.1*vel)
else:
sleep(0.3*vel)
sleep(0.3*vel)
* ?
O 1 " 3 ! * 30
" * # !
! . ! *
" " ! *
P ,$
# " 1
* 1
' +  &
" $ 1 ! 1 " !
M N 0 " M N ZST[! MC M ' )
" + * for j "  & ' +
&8 '.+ 30 ! @HH LO
4 & ! sleep(0.3*vel)! ; 31
* for j! )! 1 *
" 0 0 &8 ' 3 +
* "
" & " ^!
$%& ! $ 8 9
104
56C2C ! N"&! # + &!C / 1 !(& 0 # B).1&
O 30
30 ! 8 !
* >H 37
! ! /
* 3 30 ! &
30 = < - .6 &
F " < ! 1 30 O 30 !
30 U> < - .6 &
)('
)(
1
n
k
kk
xf
xf
xx −=+
from math import *
from os import startfile
from time import time,localtime
print 'Operadores especiais disponíveis:'
print 'sin, cos, log (neperiano),'
print 'log10 (base 10), e sqrt (raiz quadrada).n'
funcao=raw_input('Função: ')
derivada=raw_input('Derivada: ')
x0=float(raw_input('Valor inicial: '))
t0=time()
105
3 !
30 *
f='x-(('+funcao+')/('+derivada+'))'
30 < - .6 & ! )"
w=open('c:/newton-raphson.txt','w')
w.write(' Newton-Raphsonnn')
if localtime()[3]<=12:
w.write(' Bom dia!nn')
elif 12<localtime()[3]<18:
w.write(' Boa tarde!nn')
else:
w.write(' Boa noite!nn')
& * $ + ! "
8 ! 8
" F * ! 26 ! ) 3 C
&
w.write('Procedimentos para encontrar a raiz de '+funcao+'nn')
w.write('Valor inicial: '+str(x0)+'nn')
106
30 * & *
& +; ! .
.  MF N  'nn' ' &
* +
x=x0
for p in range(10):
w.write('Iteração '+str(p+1)+':n')
x=eval(f)
w.write(str(x)+'n')
w.write('n')
* >H 37 * 30
< - .6 & 30 2#6 & M1N
1 F ) 1 ' 1
& 0 O - . & 9+
>>> string='2+a+b'
>>> a=1
>>> b=5
>>> eval(string)
8
+ 1>H * 2
. ! . * $ *
107
'n' $ 2 0
O ! 1 1 " & " 8
w.write('Valor aproximado da raiz: '+str(x)+'nn')
26 ! time()-t0 "
H
w.write('Tempo para cálculos: '+str(time()-t0)+'n')
<0 &" ! 0 &
26! * " #
w.close()
startfile('c:/newton-raphson.txt')
J 3 " 30 $ *
! )" *
1 @ O / 2 0 /
P - 0 ) AHHH! & 37 3
t=open('c:/Arquivos de Programas/ACAD2000/graficos.scr','w')
`" 30 ! 30
!
108
def arange(xi,xf,i):
a=[]
while xi<=xf:
a.append(xi)
xi=xi+i
return a
S T / AH!
1 ! &
t.write('colorn')
t.write('20n')
0 & " " !
& " ! 1 2+ #2+66! +
1 O +; / g 9
t.write('linen')
funcao=funcao.replace('x','elemento')
for elemento in arange(x,x0,0.1):
t.write(str(elemento)+','+str(eval(funcao))+'n')
t.write('n')
t.write('Zoomn')
t.write('Extentsn')
t.close()
109
1 ! / " &&= I )! / . " 1
#
56C?C 0 4&<).!+& .0 = ( 0 0A .#
4 H I "
4 & ! &
K ; ) . 1
$ H
` H
$ E
` HE
$ D
` HED
$ C
` HE@C &)
import random
r=random.random
print 'Memorian'
print 'Nao joque usando IDLEn'
print 'Digite todos os numeros que forem'
print 'informados pelo programa'
3 *) M & N H I
110
escolha=int(10*r())
print escolha
a=str(escolha)
user=str(int(raw_input('Tente: ')))
* " !
3 ) )
while user==a:
escolha=int(10*r())
print escolha
a=a+str(escolha)
user=str(int(raw_input('Tente: ')))
print 'n'*100
& print 'n'*100 >HH & *
" 0 & )
! "  ^ ) 0
1 =/5 ! ) 4
2 30 $ 0 ! O 4
" 0 
4 & ! )!
print 'Voce perdeu!'
111
" * 4
print 'Seu saldo:',len(a)
" / 2 0 =/5 !
0 ) " & ! " 0 * "
! ) * O
raw_input('Pressione ENTER para sair')
# " F E /G/.&
J"
$ 1 ! 30 e O
* 'A! + e O * '>! +?$
* 0 O * '1+! 1 ?
!
" " & )!
O 4 ! 1
4 2 & E! 0 E * !
" 4 J 3 *
) , ) 1 )
) * &
& 4 ' ) " @C+
112
/ * "
3! 3 !
1
M5 N
&
O O
! * 0
/ & * M 5 8 N
, AHH O
F .* , M 5 8 N
0 ! 1 ".
x, y = 5, 3
print x
print y
def one():
x = 1
print x
two(x)
print x
def two(y):
print y
y = 2
print y
z = one
y = z()
print x
print y
113
0 #GCCC
! $%&
*) ! 30
*" ! $%& & 
^ ! SL T !
$ )" !
' * 9+
30 *) ' + $ *) ! $%& !
9
R ) 3 37 !
* 30 !
1 * & " *
0 *
< 1 * "
1 # ! ! !
! 30 *) " 30 "
0 30 "
< 9
Sua participação é muito importante para a constante
melhoria deste material. Ficarei muito honrado em
conhecer suas opiniões, sugestões, críticas ou dúvidas
sobre ele. Para isso, posso ser encontrado em
labaki@feis.unesp.br.
Agradeço a todos que já colaboraram, em especial ao Prof.
E. R. Woiski, Ph.D, pelas observações e a toda a lista
python-brasil por diversas mensagens que ajudaram a
melhorar muitos pontos ao longo do texto.
J. Labaki
labaki@feis.unesp.br
http://labaki.tk
" (&/)0 !"& &( (. ".3)G(&=.1 0 !":( ( B) 0#!".(& & / W(."& (&#)"& C

Mais conteúdo relacionado

PDF
346
PDF
Clean Code Matters!
PDF
Capítulo 2 Evolução do pensamento em administração
PPTX
NotORM
PDF
Capítulo 2 parte 2 - Escolas da Administração
PDF
Módulo 5 análise das demonstrações contábeis
KEY
Links patrocinados. Apresentação Duplo M
PPTX
Introdução ao MongoDB
346
Clean Code Matters!
Capítulo 2 Evolução do pensamento em administração
NotORM
Capítulo 2 parte 2 - Escolas da Administração
Módulo 5 análise das demonstrações contábeis
Links patrocinados. Apresentação Duplo M
Introdução ao MongoDB

Semelhante a Pythonbasico (20)

PDF
pythonbasico.pdf
PDF
Introdução a python módulo b
PDF
EXIGÊNCIAS DE CERTIDÕES NEGATIVAS PARA LEVANTAMENTO DE VALORES DECORRENTES DE...
PDF
346
PDF
Tcc apresentacao1
PDF
Guia rapido para_aplicacao_nova_ortografia
PDF
Methodologies background hiberno romanesque metalwork
PDF
Guia rapido para_aplicacao_nova_ortografia
PDF
Guia acordo-ortografico
PDF
Guia acordo ort.
PDF
Guia do acordo ortográfico
PDF
guia-acordo-ortografico
PDF
Guia acordo-ortografico mc-e_me
PDF
ME - Acordo ortografico - guia
PDF
Guia acordo ortografico
PDF
Guia acordo-ortografico
PDF
12 03-2010 - apresentação da teleconferência 2009
PDF
Acordao.stf.exclusao icms da base de cauculo da cofins
PDF
1. aula 12.10.2009 ordem juridica + fontes
PDF
Guia rapido para_aplicacao_nova_ortografia
pythonbasico.pdf
Introdução a python módulo b
EXIGÊNCIAS DE CERTIDÕES NEGATIVAS PARA LEVANTAMENTO DE VALORES DECORRENTES DE...
346
Tcc apresentacao1
Guia rapido para_aplicacao_nova_ortografia
Methodologies background hiberno romanesque metalwork
Guia rapido para_aplicacao_nova_ortografia
Guia acordo-ortografico
Guia acordo ort.
Guia do acordo ortográfico
guia-acordo-ortografico
Guia acordo-ortografico mc-e_me
ME - Acordo ortografico - guia
Guia acordo ortografico
Guia acordo-ortografico
12 03-2010 - apresentação da teleconferência 2009
Acordao.stf.exclusao icms da base de cauculo da cofins
1. aula 12.10.2009 ordem juridica + fontes
Guia rapido para_aplicacao_nova_ortografia
Anúncio

Último (20)

PPTX
GUERRAFRIA.pptdddddddddddddddddddddddddx
PDF
Fiqh da adoração (islamismo)
PDF
Extintores e Acessórios por Francisco Borges.pdf
PDF
EXPRESSÕES IDIOMÁTICAS - LÍNGUA PORTUGUESA
PDF
A provisão de jojuador (ramadã) islamismo
PPTX
16. MODERNISMO - PRIMEIRA GERAÇÃO - EDIÇÃO 2021 (1).pptx
DOCX
PLANEJAMENTO QUINZENAL - 18.08.2025 à 29.08.2025 - 2ºANO - PROFESSORA PATRÍCI...
PDF
A relação entre funções executivas e desempenho acadêmico em crianças com Tra...
PDF
ESPELHOS DA ALMA A PSICOLOGIA POR TRÁS DOS CONTOS DE FADAS.pdf
PDF
[Slides] A Literatura no ENEM 2017 (1).pdf
PPTX
INTRODUÇÃO AO ESTUDO DA ANATOMIA HUMANA [Salvo automaticamente].pptx
PDF
Formação politica brasil_2017.pptx.pdf
PDF
50 anos Hoje - Volume V - 1973 - Manaus Amazonas
PDF
Um dia na casa do Mensageiro (que a paz e benção de Deus estejam com ele)
PDF
DOENÇAS SEXUALMENTE TRANSMISSIVEIS E SUAS POLARIDADES
PDF
COMO OS CONTOS DE FADAS REFLETEM ARQUÉTIPOS_MEDOS E DESEJOS DO INCONSCIENTE H...
PPTX
AULA METodologia MODIFIC PART 1 MSC.pptx
PPTX
Ocupação e transformação dos territórios.pptx
PDF
O retorno a origem (islã Islamismo)
PDF
Combate a Incêndio - Estratégias e Táticas de Combate a Incêndio por Francis...
GUERRAFRIA.pptdddddddddddddddddddddddddx
Fiqh da adoração (islamismo)
Extintores e Acessórios por Francisco Borges.pdf
EXPRESSÕES IDIOMÁTICAS - LÍNGUA PORTUGUESA
A provisão de jojuador (ramadã) islamismo
16. MODERNISMO - PRIMEIRA GERAÇÃO - EDIÇÃO 2021 (1).pptx
PLANEJAMENTO QUINZENAL - 18.08.2025 à 29.08.2025 - 2ºANO - PROFESSORA PATRÍCI...
A relação entre funções executivas e desempenho acadêmico em crianças com Tra...
ESPELHOS DA ALMA A PSICOLOGIA POR TRÁS DOS CONTOS DE FADAS.pdf
[Slides] A Literatura no ENEM 2017 (1).pdf
INTRODUÇÃO AO ESTUDO DA ANATOMIA HUMANA [Salvo automaticamente].pptx
Formação politica brasil_2017.pptx.pdf
50 anos Hoje - Volume V - 1973 - Manaus Amazonas
Um dia na casa do Mensageiro (que a paz e benção de Deus estejam com ele)
DOENÇAS SEXUALMENTE TRANSMISSIVEIS E SUAS POLARIDADES
COMO OS CONTOS DE FADAS REFLETEM ARQUÉTIPOS_MEDOS E DESEJOS DO INCONSCIENTE H...
AULA METodologia MODIFIC PART 1 MSC.pptx
Ocupação e transformação dos territórios.pptx
O retorno a origem (islã Islamismo)
Combate a Incêndio - Estratégias e Táticas de Combate a Incêndio por Francis...
Anúncio

Pythonbasico

  • 1. !! !! " # $% & %' ($ )
  • 2. 2 !"#$%& '!"&()$%& # *"+&!, ) & *"+&! ! " # $%& '& (( %& )* +! " '& (( * , ,+ " $%& '& ((--- %& .* *+ / * 0 * 1 2 " 30 ! 4 . 5 * *) 0 ! *" $%& 2 30 ! 1 5 6 & '& ((--- *+ 6 & 1 ! 7 ! &" 1 1 8 1 30 4 ! 7 ! 8 " . 9 2 0 * Josué Labaki # $%& / & : ;< 2$ =& 2 [email protected]
  • 3. 3 -!(./ # " 0 1.!(&# *"+&! 2 > $ $%& ? @ A ; $%& B C ; $%& D E F " G # " . & ( 34"& 56 > 2 >H A 5 >@ C >I E / " A> # " 7& 0#"#!(& 34"& 89 > J AC A 6 30 AB # " " : && : # () # & 8; > AI A C> C = CC E J C@ @ , EH B EA # " & & .0 . & &< #0# /&0 ="& >? # " 7)!$@ A()=& 25 > / 37 @> A J 37 * K @D C 6 BA
  • 4. 4 E BB @ ; DC # " =<)! ")B) CCC D; > 30 DI A 2 1 2 GC C 6 GB E $%& / * GI @ 4 ! 9 IA B IC # " E 0 =& ;2 > * & 37 I@ A ! * & IG C " # >HH E ! / " >HA @ $ >HE B ; ) & >HI # " F E /G/.& 555 0 #GCCC 559
  • 5. 5 # " 0 1.!(&# *"+&! > & B) ")(# *"+&!H $%& 30 8 8 'FL55. F %L & 5 5 +! & # F 6 * M$ 30 N O $%& * ' ! * +! * '$%& P - ! 5 1! ! $ ! ! + O 1 ! & ) " $%& $%& *) ! * * ) 3 37 30 *) M 1 N! $%& " ! ) $%& * = )" O ! O * & O 3 $%& ! $& ! = 5 & ' # 5 +! $%& 2 P ! < 2 ! 3 ; ';2 +! < , $%& ! / %! # Q & ! F ) 1 $%& %'& ((--- %& % + ! * . 8 8 J R $%& * '& ((--- %& * *+
  • 6. 6 M % & % & #' % % ( % ) " % % * + , + #' - ) % + . # & % ( + #' & % & ” A #!(&&.!" "#(& ( *"+&!C L" " $%& O ! =/5 ; " P - . !./.# I &< #0# I *"+&!8C9 I $ =/5 1 & ! * " *) ! O " 30 * *) $%& ; " 5 1 =/5 ! ! S%& T & * 37 5 1)" O $%&
  • 7. 7 C #!(& *"+&!/&0&)0# /#=/)=#(& #C * " =/5 " ! * " ! * 0 )" U! .! V ( * 0 >>> a=1 >>> b=2 >>> a == b # == testa se a é igual a b False >>> a != b # != testa se a é diferente de b True >>> a <> b # <> também testa se a é diferente de b True >>> a > b # > testa se a é maior que b False >>> a < b # < testa se a é menor que b True >>> 2*a >= b # testa se o dobro de a é maior ou igual a b True 8 * W $%& " ! 1 " 0 1
  • 8. 8 $%& * VV >>> 2**3 # É o mesmo que 23 (dois ao cubo). 8 >>> 2**(3+6) # Dois elevado a 9 512 L" 4 0 4 >>> 7 % 2 # O resto da divisão entre 7 e 2 1 / 01123456 7 89 E # .J1 . !#(# # ( /=# # $%& = O 0 " " . $ & M* N! * . *) *) ! * A! ! M >N! O >XA! M >N " $%& $ * *) ! 30 type(x)! *) 1
  • 9. 9 >>> valor1=2 >>> valor1 2 >>> type(valor1) <type 'int'> $ * 0 M N " M >N O. 2 * M 9N M >N! O / O! *) M >N " M 9N' O & 3 J 6 6 < M & N+ >>> valor1='Boa tarde!' >>> valor1 'Boa tarde!' >>> type(valor1) <type 'str'> *) $%& 0 .!". & ! K=&#" ' 4 ! & 8 37 30 +! ".!< ' 1 +! =. "# ! ") =# (./.&!J .& $ . *) ! 37 int! float str! ! &
  • 10. 10 # " . & ( 34"& > ".!< 2 0 *) $%& * & 1 $%& 0 K ! * & >>> palavra='termodinâmica' >>> palavra 'termodinxe2mica' & ‘termodinxe2mica’ $%& *) M N ! )" 0 & & 0 ! O " $ " ! M : N $ ! >>> print palavra 'termodinâmica' $%& ! K ! 3 K O K $%& ! 3 3 O 1 * 8 3 Y K 2 2ZY[
  • 11. 11 >>> palavra[2] 'r' >>> 2*palavra[0] 'tt' F * K $ 1 ! K M N 0 3 I >A! O >>> palavra[9:12] 'mic' $ & ! * . 3 $%& ! 0 = ! 3 *) S T " palavra[9:12] 0! . /9 $ 3 ! 4 K >>> palavra[9:] 'mica'
  • 12. 12 / ! 3 'H+ I 0 >>> palavra[0:9] 'termodinxe2' ! 3! >>> palavra[:9] 'termodinxe2' $ * 3 >>> print palavra[:9] 'termodinâ' % print palavra[:]9 2 0 ) & K ! >>> palavra[1:8] 'ermodin'
  • 13. 13 >>> palavra[1:8:2] 'emdn' 0 3 > G! A ' )! 3 >! C! @ D+ F ) 1 C >>> palavra[1:8:3] 'eon' )! 3 >! E D ! 8 K " ! >>> palavra[7:0:-1] 'nidomre' < 4 3 3 D H! 1 1 O ! & K M N " 3 'O +! 30 >>> palavra[7::-1] 'nidomret' = 3 4 3
  • 14. 14 >>> palavra[:4:-2] 'aixe2i' 'F )" " 1 xe2 M:N! 0 ?+ ! 4 3 ! 0 " K >>> palavra[::-1] 'acimxe2nidomret' O )" & * : >>> palindromo='socorram me subi no onibus em marrocos' >>> palindromo[::-1] 'socorram me subino on ibus em marrocos' " 0 0 ! " * 4 K R 1 * ! MUN M 30 N! ! 30 1 Palíndromos são palavras ou sentenças que são iguais tanto se lidas de trás para frente quanto no sentido normal.
  • 15. 15 >>> palavra=palavra+' aplicada' >>> print palavra 'termodinâmica aplicada' >>> palavra[14:] 'aplicada' 30 1 * K $%& len(x)! & K 1 >>> len(palavra) 22 A . "# ; *) 4 $%& * K ! 1 >>> lista=[1,2,3] >>> lista [1, 2, 3] < 1 ! ! ! ! *)
  • 16. 16 K ! 3 )" >>> lista[0] 1 >>> lista[0]+lista[2] 4 MUN * 30 Z>!A!C[ ZE[' 4 + J O UE " ! Z>!A!C[ >>> lista=lista+[4] >>> lista [1, 2, 3, 4] >>> lista+4 Traceback (most recent call last): File "<pyshell#1>", line 1, in -toplevel- lista+4 TypeError: can only concatenate list (not "int") to list >>> lista=lista+[0,0,0] >>> lista [1, 2, 3, 4, 0, 0, 0]
  • 17. 17 * * 8 3 K " 4 3 * & Z.>[! 4 Z.A[! >>> lista[-1] 0 >>> lista[2:-2] [3, 4, 0] ! * & K M N >>> len(lista) 7 ; 8 0 K " ! = O * 8 3 ! 0 O >>> lista[0] = 'zero' >>> lista ['zero', 2, 3, 4, 0, 0, 0] >>> lista[1] = lista[1]+lista[2] >>> lista ['zero', 5, 3, 4, 0, 0, 0] >>> lista[2] = lista[0]
  • 18. 18 >>> lista ['zero', 5, 'zero', 4, 0, 0, 0] >>> a='Boa tarde!' >>> a[0]='N' Traceback (most recent call last): File "<pyshell#3>", line 1, in -toplevel- a[0]='N' TypeError: object doesn't support item assignment <0 & 9 ) "& & 4 ! O < ! object doesn't support item assignment ' *) 0 * 30 +! * " * 30 >>> linha1=[1,2,3] >>> linha2=[0,-1,1] >>> linha3=[3,3,3] >>> matriz=[linha1,linha2,linha3] >>> matriz
  • 19. 19 [[1, 2, 3], [0, -1, 1], [3, 3, 3]] >>>matriz[1] [0, -1, 1] % matriz[1] " 09 & . O >>> matriz[1][2] 1 C ) =# 0 *) ! 3 0 " ; O ! 0 1 >>> tupl=(1,2,3) >>> tupl (1, 2, 3) >>> tupl[0]=0 Traceback (most recent call last): File "<pyshell#10>", line 1, in -toplevel-
  • 20. 20 tupl[0]=0 TypeError: object doesn't support item assignment * *) ] ! ! ! ! O * $%& ! & M , . , N >>> a,b = 0,'Deu certo?' >>> a 0 >>> b 'Deu certo?' ^ O M ; <= 9> N " ! *) >>> a,b=b,a >>> a 'Deu certo?' >>> b 0
  • 21. 21 E ./.&!J .& / " * 0 ! 0 0 K 0 0 1 K ! 0 2 3 & & * 8 2 * " ! & ! 0 3 1 " >>> aurelio={'denomiação':'ilha solteira','população':23000,'renda':1500} >>> aurelio {'populaxe7xe3o': 23000, 'denomiaxe7xe3o': 'ilha solteira', 'renda':1500} < 1 ! ACHHH * 8 & M 30 N $ & ! O >>> aurelio['vocação']='turismo' * M N & M 30 N >>> aurelio {'populaxe7xe3o': 23000, 'vocaxe7xe3o': 'turismo', 'denomiaxe7xe3o': 'ilha solteira', 'renda': 1500} * 8 & !
  • 22. 22 >>> aurelio['renda'] 1500 / " 0 " ^ " & >>> aurelio['renda']=aurelio['renda']+200 >>> aurelio['renda'] 1700 $ & " & >>> aurelio.keys() ['populaxe7xe3o', 'vocaxe7xe3o', 'denomiaxe7xe3o', 'renda'] >>> aurelio.has_key('idade') False >>> aurelio['idade']=33 >>> aurelio.has_key('idade') True 3 dicionario.items() ' & ! * 8 + >>> aurelio.items() [('idade', 33), ('populaxe7xe3o', 23000), ('vocaxe7xe3o', 'turismo'), ('denomiaxe7xe3o', 'ilha solteira'), ('renda', 1700)]
  • 23. 23 # " 7& 0#"#!(&&34"& > 7& 0#"#$%&( ".!< $ 1 F ) 1 >>> constante=3.14 >>> print 'O valor de pi é %f' %constante O valor de pi é 3.14 * _ " M N M N 'C >E+! 30 " ! M N < 1 "
  • 24. 24 >>> nome='abacaxi' >>> caracteristica='amarelo' >>> print '%s é uma fruta' %nome abacaxi é uma fruta >>> print '%s é %s' %(nome,caracteristica) abacaxi é amarelo ^ " ! 0 >>> print '%f %ss também são %ss' %(constante,nome,caracteristica) 3.14 abacaxis também são amarelos / O & M N! M N ! M N M N! M N M 8 N 0 * _ M N M N " ! ! O " O M * 1N M N % <7# >9 = 1 O " 1
  • 25. 25 >>> valor = 3.1415926535897931 >>> print 'O valor é %.2f' %valor O valor é 3.14 >>> print 'O valor é %.3f' %valor O valor é 3.141 >>> print 'O valor é %f' %valor O valor é 3.1415926535897931 = % ! O " 1 % >>> print 'O valor é %8.2f' %valor O valor é 3.14 2 C! ! E 0 0 E 3 * ! G 1 >>> print 'O valor é %12.4f' %valor O valor é 3.1416 C! 1 B 3 * >A
  • 26. 26 A /) & ( 0#!. )=#$%&( =. "# >>> a=[1,2,3] >>> a [1, 2, 3] ?+ O ! O >>> a.append('poncan') >>> a [1, 2, 3, 'poncan'] >>> a.extend([0,0,-3]) >>> a [1, 2, 3, 'poncan', 0, 0, -3] F ) 3 O " 4 ! 4 3 >>> b=[1,2,3] >>> b.append([1,2,3]) >>> b [1, 2, 3,[1, 2, 3]]
  • 27. 27 2 O 3 8 ! 2 6 M N 3 O >>> a.insert(0,'start') >>> a ['start',1,2,3,'poncan',0,0,-3] * &" @ J O remove(0) * ! H / O M N >>> a.remove(0) >>> a ['start', 1, 2, 3, 'poncan', 0, -3 >>> a.remove('poncan') >>> a ['start', 1, 2, 3, 0, -3] ; : 26 : O 3 >>> a.pop(0) 'start' >>> a [1, 2, 3, 0, -3]
  • 28. 28 `" 4 O $ * 4 O ' O+ MCN M N! O >>> a.count(3) 1 `" " ! ! K ! 0 F 30 F ) " * / O & O >>> Mohs=['Talco', 'Gipsita', 'Calcita', 'Fluorita', 'Apatita', 'Ortoclásio', 'Quartzo', 'Topázio', 'Coríndon', 'Diamante'] >>> Mohs[::-1] ['Diamante', 'Corxedndon', 'Topxe1zio', 'Quartzo', 'Ortoclxe1sio', 'Apatita', 'Fluorita', 'Calcita', 'Gipsita', 'Talco']
  • 29. 29 # " " : && : # () # & > !B)#!"&CCC < * 1 ! M-& N @ 2 ! 0 1 'L+ < ! O * 30 & M*N * 8 M*N > >>> b=0 >>> while b < 5: print b b=b+1 0 1 2 3 4 $ * & 1 ) @ $%&
  • 30. 30 0 R O ! * " 0 3 ! * & ; 8 =/5 * O F * 8 < 6 ... b < 5 & )" & * 1 -& < 6 print b b=b+1! ! =/5 $ < 6 O! 2& * " 0 &" 0 1 F ) * ] O! >>> b=1 >>> while b < 5: print '%i dólares valem %.2f reais' %(b,b*2.98) b=b+1 1 dólares valem 2.98 reais 2 dólares valem 5.96 reais 3 dólares valem 8.94 reais 4 dólares valem 11.92 reais 2 0 8 4 & M N *! " >! " > a @ ! " & 2 Você também pode encontrar na literatura de Python o termo “endentação”, que significa a mesma coisa. No entanto, “indentação” é mais utilizado, embora seja um neologismo (já incorporado por alguns dicionários da língua portuguesa).
  • 31. 31 1 dólares valem 2.98 reais 2 O ! * 65U ' =/5 + ! b+=1! b*=2 b+=n b=b+n! b*=n b=b*n A !"#(# ( (#(& F ) " $%& >>> x = raw_input('Informe a fase: ') Informe a fase: vapor >>> x 'vapor' 30 $! 26 " 3 0 ! 30 $ . ! * 30 * ! O M1N ! O ! $! 26 F ) "
  • 32. 32 >>> a = raw_input('Tamanho do lado do quadrado: ') Tamanho do lado do quadrado: 23 >>> print 'O perímetro deste quadrado é', 4*a O perímetro deste quadrado é 23232323 >>> type(a) <type 'str'> * ! 8 AC 0 23232323 30 E O 2 " ! $! 26 *) ) 37 # >>> a = raw_input('Tamanho do lado do quadrado: ') Tamanho do lado do quadrado: 23 >>> a = int(a) >>> type(a) <type 'int'> >>> print 'O perímetro deste quadrado é', 4*a O perímetro deste quadrado é 92 ! >>> a = int(raw_input('Tamanho do lado do quadrado: '))
  • 33. 33 Tamanho do lado do quadrado: 23 >>> type(a) <type 'int'> ! 30 *) # 2+6 >>> r = float(raw_input('Raio: ')) Raio: 4.5 >>> type(r) <type 'float'> C KCCC =.KCCC = CCC < * 1 ! M1N M 8 N 7 2 ! M >HHb N 7 2 0 ! M1N 0 M 8 N! M N! M >HHb N M1N 0 ) M 8 N M N! M Hb N
  • 34. 34 30 30 ) ) + ) M 8 N " & # >>> x = raw_input('Informe a fase: ') Informe a fase: vapor >>> if x == 'líquido': print 'Menos de 100º C' elif x == 'vapor' : print 'Mais de 100º C' else: print 'Menos de 0º C' Mais de 100º C F & " CH! )" 0 O " 'M> N+ >>> b = 1 >>> while b < 4: if b==1: print '%i dólar vale %.2f reais' %(b,b*2.98) else: print '%i dólares valem %.2f reais' %(b,b*2.98) b+=1
  • 35. 35 1 dólar vale 2.98 reais 2 dólares valem 5.96 reais 3 dólares valem 8.94 reais E 7& # $%& 8 # ! M N K ' ! ! + " >>> a = ['João', 'Rafael', 'Douglas'] >>> a ['Joxe3o', 'Rafael', 'Douglas'] >>> for i in a: print i João Rafael Douglas >>> for x in a: print '%s tem %i letras' %(x,len(x)) João tem 4 letras Rafael tem 6 letras Douglas tem 7 letras
  • 36. 36 M$ 1 N. M1N K 1 / ! + K " $ ! M1N M`0 N ' + ^ x len(x) M`0 N 'S`0 T+ 2 ! 0 ?$ 8 1 ; 30 # 30 2 # 6! 3 # :! 4 >>> range(1,11,2) [1, 3, 5, 7, 9] ! # 4 $ O >! >>> range(10) [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] >>> range(1,11) [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] >>> for elefante in range(5): print elefante**2 0 1 4 9
  • 37. 37 16 # * K 2A6 $ * & K % % ! '*O + M N & K ' & C+ 4 ! 0 0 &" * 30 * ' + < ! 236 >>> for i in range(len(a)): print i 0 1 2 4 3 K $%& * 4 >>> for i in range(len(a)): print i,a[i] 0 João 1 Rafael 2 Douglas
  • 38. 38 < )" * 30 * 37 O 30 * # * >>> matriz = ((1,0,0),(0,1,0),(0,0,1)) >>> for i in range(len(matriz)): # é o mesmo que range(3), ok? print 'n' for j in range(len(matriz)): # idem print matriz[i][j], 1 0 0 0 1 0 0 0 1 print 'n' & * $ O print 'n'*k , & * < 1 ! 8 & print & # * " ! & " & 1
  • 39. 39 >>> orçamento = {'asa':1200,'combustível':200,'motor':4500} >>> for qualquer in orcamento: print qualquer combustível asa motor % % & " 2 ! >>> for teste123 in orcamento: print teste123,'custa R$',orcamento[teste123] combustível custa R$ 200 asa custa R$ 1200 motor custa R$ 4500 $ 1 )" :03 & ! c * 8 c! & " ! O orcamento[teste123] O orcamento['combustível']! " &
  • 40. 40 B ( % dicionario.items() 2 6 - & ( # C 9 D % % % %E( @ #M * * $ # F * M_N? 0 * 1 O ZA!C!E!@!B! ! .>[ 8 2 8 ' )! _ XX H+! 0 0 4 # >>> n = int(raw_input('Número a testar: ')) Número a testar: 28 >>> for i in range(2,n): if n % i == 0: print 'Número não primo'; break Número não primo &"#L 2 1 & ! . 8 ! O * # * # ! $ 37 37
  • 41. 41 * * $ >>> b=10 >>> while 1: b=b-1 print b if b<7: break 9 8 7 6 * 30 while 1: ; 1 F . " * ! & " loop1: blablabla blebleble loop2: bliblibli blobloblo break2 # Cancela somente o loop2 break1 # Está alinhado com o loop1, portanto cancela somente loop1.
  • 42. 42 B #"#0 !"&( & < 37 * K 0 " ! K " < 1 ! & C " " 0 " ? >>> lst=[] >>> for nome in range(3): lst.append(int(raw_input('Digite um valor: '))) Digite um valor: 33 Digite um valor: -4 Digite um valor: a Traceback (most recent call last): File "<pyshell#26>", line 2, in -toplevel- lst.append(int(raw_input('Digite um valor: '))) ValueError: invalid literal for int(): a 30 '% % + 0 d ST ' 9+ 0 " 3 0 ?;
  • 43. 43 >>> lst=[] >>> for i in range(3): while 1: try: lst.append(int(raw_input('Digite um valor: '))) break except: print 'Digite somente números!!!' Digite um valor: 2 Digite um valor: a Digite somente números!!! Digite um valor: r Digite somente números!!! Digite um valor: t Digite somente números!!! Digite um valor: 33 Digite um valor: e Digite somente números!!! Digite um valor: w Digite somente números!!! Digite um valor: -4.99 >>> lst [2, 33, -4]
  • 44. 44 1 "*L O ) & ' 30 ! * ?+ * E/ "L & * % ! 0 0 1 & < 1 ! $! ! 4 30 26 2 ! 30 0 " ". 8 30 * M 1 N! " 4 * ! % & " . 2 0 & O! 1 & ! M* ,N! " * 8?<0 O ! 0 1 K 236! ! & " 2 " O ! * 1 O ! )" 0 &" O ! 1] 0 8 ! 0 8
  • 45. 45 >>> x = int(raw_input('Digite um número inteiro: ')) Digite um número inteiro: -3 >>> while x<3: try: print 1./x except: print 'Não é possível dividir 1 por %i' %x x=x+1 # Também pode ser x+=1 -0.333333333333 -0.5 -1.0 Não é possível dividir 1 por 0 1.0 0.5 : F+ % + # " G (# 9 * * 3 >(C > (C ! 0 ! H < ! 0 > ' > H+ C! ! H CCCCCCCCCCCCCCCC> 2 ! * 30 )
  • 46. 46 >>> 1+2 3 >>> 1+2.0 3.0 >>> 2*9 18 >>> 2*9. 18.0 >>> 1/3. 0.33333333333333331 # " & & .0 . & &< #0# /&0 ="& F $%& * ] * 1 0 0 3 30 ; " =/5 ! =/5 ! * " $ ! " 7.= I N N.!(&N =/5 ! 65U< ' 0 3 1 0 9+! 0 ! #! # $ 0 ) " & .
  • 47. 47 3 . ! " 8 18 R ! " )! I )! &()=! J@ F O 4 " /O 4 4 ! 1 ! B 'BX>UAUC+ # perfeitos.py n = int(raw_input('Digite o número a ser testado: ')) teste = 0 for i in range(1,n): if n % i == 0: teste=teste+i if teste == n: print n, 'é um número perfeito' else: print n, 'não é um número perfeito' F D :H " = ! * 30 $! ! 30 ! 0 * D 0H; O 0 " O
  • 48. 48 ! " 2 ! 4 D 3H ,! 0 2 * 0 K '>! + ' )" 1 K Z>!A!C!E! ! .>[! 0 ?+ 0 * O ' ! # + * 2: 6 0 D IH2 K ! 0 D AH . 9 D 5H * $ * & # 2 30 ! 0 " 1 K 0 ! * M N! D 8H= " 1 M N ) ' )! 4 ! + D JH2 0 ! ' M N 0 + D KH 0 4 1 ' J@ ) " +! >>> Digite o número a ser testado: 6 6 é um número perfeito
  • 49. 49 F ) " J@ ! >>> Digite o número a ser testado: 7 7 não é um número perfeito & J@ & ! 0 ? 'while 1:! 1 +! 1 O while 1: o código aqui (indentado corretamente) ? # H& G @D4G G ( # # # ( ' C 9 G ( ' % C # & 59 . ( 2 6 # " % 3 C # % + &:;;;; & 5
  • 50. 50 F * 1 8 ! / ! 0 " 1 =/5 ! * O ; & 1 30 ) * & ! 0 " 8 ; . * " ) & raw_input(‘Pressione ENTER’) ! )" $! " 2 " < 6 ! 0 ! )" 30 0 " $ =/5 ! * 8 * 0 & M =/5 N 3 1#$%&L 5 1' * 9+! " & 3 O30 $%& #!/usr/bin/python & /usr/bin/python < $%& " 5 1>H H ! 5 1! * 30 $ ? ! )" $%&
  • 51. 51 # " 7)!$@ A()=& > K.!.!(&K)!$@ ! 37 4 1 * " " O ! O & R 0 ! * 30 ! & 37 1 37 $%& def nome_da_funcao(parametro1,parametro2,...): operacoes sobre os n parametros = ) " 4 " O $ 30 >>> def f(x): return x**2 >>> f(3) 9
  • 52. 52 30 ! O >>> def elevar(x,y): return x**y >>> elevar(9,9) 387420489 L" 37 * & 4 ! 1 def nome_da_função(*nome1): procedimentos... 1 * >>> def impressora(*argumentos): return argumentos >>> impressora(1,2,3) (1, 2, 3)
  • 53. 53 " >! A C 0 30 ! * & ! )" ) >>> def somatoria(*argumentos): soma = 0 for i in argumentos: soma+=i # Você já sabe: soma+=i é o mesmo que soma=soma+i return soma >>> somatoria(1,2,3,4,5) 15 30 . " ) ! 0 30 ! 1 ! >>> somatoria(1,2,3,4,'teste') Traceback (most recent call last): File "<pyshell#27>", line 1, in -toplevel- somatoria(1,2,3,4,'teste') File "<pyshell#25>", line 4, in somatoria soma+=i TypeError: unsupported operand type(s) for +=: 'int' and 'str'
  • 54. 54 = 30 0 O c c - % ( # # ' % # ' 9 ? L & % & ' 2 6 37 0 37 * >>> def testa_primo(n): teste=1 for i in range(2,n): if n % i == 0: teste=teste+1 if teste != 1: print 'Número não primo' else: print 'Número primo' >>> testa_primo(28) Número não primo >>> testa_primo(7) Número primo
  • 55. 55 <0 &" * 30 30 ! 'C+ I : 30 >>> elevar(f(3),4) 6561 F ! 30 " 30 0 3 >>> def user(nome='Labaki'): print 'Meu nome é',nome >>> user('Mamute') Meu nome é Mamute >>> user() Meu nome é Labaki 1 >>> cadastro=[] >>> def add(x,y='Casado',z=3): cadastro.append([x,y,z]) >>> add('Mozart','Solteiro','sem filhos') >>> cadastro
  • 56. 56 [['Mozart', 'Solteiro', 'sem filhos']] >>> add('Beethoven') >>> cadastro [['Mozart', 'Solteiro', 'sem filhos'], ['Beethoven', 'Casado', 3]] >>> add('Bach','Viúvo') >>> cadastro [['Mozart', 'Solteiro', 'sem filhos'], ['Beethoven', 'Casado', 3], ['Bach', 'Vixfavo', 3]] 2 % 0 O! >>> add('Salieri',z=4) >>> cadastro [['Mozart', 'Solteiro', 'sem filhos'], ['Beethoven', 'Casado', 3], ['Bach', 'Vixfavo', 3], ['Salieri', 'Casado', 4]] $ " ! O O 30 ! . 37 * 37 20 & M N >>> def f(x): """Esta função retorna o quadrado de um número""" return x**2 >>> f(2)
  • 57. 57 4 >>> print f.__doc__ Esta função retorna o quadrado de um número A 7)!$@ &3 BOP!/.# 2 K 30 * ! &" * " O ; 30 ! 30 * K < 1 * 1 ! %E( : # : map(função1, seqüência1) >>> def quadrado(termo): return termo**2 >>> elementos=[1,2,3,4,5,6] >>> map(quadrado,elementos) [1, 4, 9, 16, 25, 36] * = * 37 0 *
  • 58. 58 >>> orcamento={'asa':1200, 'combustível':200, 'motor':4500} >>> def cambio(componente): print componente[0],'R$ ',componente[1] print componente[0],'US$ ',componente[1]/3. print 'n' >>> map(cambio,orcamento.items()) combustível R$ 200 combustível US$ 66.6666666667 asa R$ 1200 asa US$ 400.0 motor R$ 4500 motor US$ 1500.0 [None, None, None] 1 30 * )" orcamento.items() ! >>> orcamento.items() [('combustxedvel', 200), ('asa', 1200), ('motor', 4500)]
  • 59. 59 30 * K * < ! 30 " ! ('combustxedvel', 200) 30 O componente[0]! O ('combustxedvel', 200)[0]! c * 8 c! componente[1] cAHHc K & [None, None, None] 1 30 8 0 * ## 30 30 . K ! 30 K 4 ! 1 2# %E( 6 >>> def soma(alfa,beta): return alfa+beta >>> reduce(soma,[1,2,3]) 6 $ ! Z>!A!C[' >+ # 30 ! ' A+ 6 >UA X C C 0 # 1 ' C+ 6 CUC X B K ? # C & # 9 G ( % 9
  • 60. 60 1 >>> def eleva(base,expoente): return base**expoente >>> elementos=[4,3,2,1] >>> reduce(eleva,elementos) 4096 / ! 3# E & !" 3# QQ E & !" )="#(& .0 . & # & E C EVVC BE <)!(& # & BE A BEVVA EHIB / . & # & EHIB > EHIBVV> EHIB )="#(& EHIB ; * & 37 K 8 $%& 0 ! 37 >>> [x**2 for x in [1,2,3]] [1, 4, 9]
  • 61. 61 4 3 O . +! + K Z>!A!C[ * 1 ! ' ! +! K ZH! >! A! C! E[ >>> [(x,x**2) for x in range(5)] [(0, 0), (1, 1), (2, 4), (3, 9), (4, 16)] ! & 37 0 * * * 0 30 0 " ! & ) >>> ['%ss' %nome for nome in ['Proclise','Jilo','Bozo','Cauchy']] ['Proclises', 'Jilos', 'Bozos', 'Cauchys'] * & K K >>> valores=((4,5,6),(7,8,9),(5,6,-7)) >>> [a+b+c for (a,b,c) in valores] [15, 24, 4] ! >@ X EU@UB! AE X DUGUI E X @UB.D ! * # 37
  • 62. 62 >>> def metade(t): return t/2. >>> map(metade,[rrr*2 for rrr in [66,77,88,99]]) [66.0, 77.0, 88.0, 99.0] < 1 ! [rrr*2 for rrr in [66,77,88,99]] Z>CA! >@E! >DB! >IG[ 0 30 30 A! " ! O ! 30 * >>> [metade(rrr*2) for rrr in [66,77,88,99]] [66.0, 77.0, 88.0, 99.0] C ") !1 ) .( KK/" [None, None, None] " ??? 5" " )" * 30 30 ) 4 ) $ & 37 0 ' " ! '1+ X >(1 0 1 1XH+! 30 " 4
  • 63. 63 8 37 $%& < 37 0 ! def nome_da_função(argumento_1,argumento_2,...,argumento_n): return parâmetro < 30 ! '4 + M * 30 )" & ! : >>> def f(x): return x**2 >>> f(3) 9 R 30 ! ! ! ! 0 ! ## ' + >>> lista=[] >>> def f(x): lista.append(x) print x return x**2
  • 64. 64 >>> f(2) 2 4 >>> lista [2] ! A A 0 ## E 30 = * 1 30 30 ! 1 * 1 >>> 2*f(9) 9 162 >>> lista [2, 9] 'I+ 4 " * ! G> X IVVA 2 30 # ' GI+ A! >BA ## 0 30 I R 0 & ! 30 N < ! 30 * 1 30 30 >>> def h(t): print t**3
  • 65. 65 >>> h(7) 343 >>> 2*h(7) 343 Traceback (most recent call last): File "<pyshell#38>", line 1, in -toplevel- 2*h(7) TypeError: unsupported operand type(s) for *: 'int' and 'NoneType' 8 ! )" 0 O N A [None, None, None]! ! 30 " @G! * 26 < " 1 8 &" * * 3 ## 1 30 1 ". / % # , -e % & F ## .# + + # %E( O # & ## #
  • 66. 66 E A()=& 7 ! " 37 " O R ! ! 0 M N 37 F ! 37 8 ! " 8 ! * 30 4 * ) < =/5 ! " 7.= I N R.!(&N! 65U< / 37 . 1 0 " ) ) 3 $ * 0 &! ' " & 8 + >>> import sys >>> for i in sys.path: print i & #circulos.py def perimetro(r): """Esta funcao calcula o perimetro de 3 Sem muito rigor, o path é uma relação de todos os diretórios em que Python vai procurar pelo seu módulo. Se você quiser, pode salvar seu módulo na pasta Python23, em C:, que certamente estará no path. No entanto, evite salvar todos os seus módulo lá, para não sobrecarregar este diretório.
  • 67. 67 um circulo de raio r.""" try: r=float(r) return 2*3.14*r except: print 'O argumento da funcao deve ser um numero.' def area(r): """Esta funcao calcula a area de um circulo de raio r.""" try: r=float(r) return 3.14*(r**2) except: print 'O argumento da funcao deve ser um numero.' def potencia(x,y=2): """potencia(x,y) eleva x a potencia y. Default: y=2.""" try: return x**y except: print 'Argumentos invalidos' def nada(): """Esta funcao nao faz nada.
  • 68. 68 So serve para mostrar doc strings.""" pass %& J@ 1 9 $ & ) ! * ) =/5 ' O ) ! )!I *"+&! + ==+ 37 >>> potencia(2,3) Traceback (most recent call last): File "<pyshell#9>", line 1, in -toplevel- potencia(2,3) NameError: name 'potencia' is not defined 30 0 " ; 37 >>> import circulos 2 ($%& AC ) &! 30 ; O ! 1 O. # 2 M 6
  • 69. 69 ! O 30 >>> circulos.potencia(2,3) 8 >>> print circulos.potencia.__doc__ potencia(x,y) eleva x a potencia y. Default: y=2. >>> print circulos.nada.__doc__ Esta funcao nao faz nada. So serve para mostrar doc strings. >>> circulos.perimetro(33.) 207.24000000000001 >>> circulos.outrafuncao(1,2) Traceback (most recent call last): File "<pyshell#6>", line 1, in -toplevel- circulos.outrafuncao(1,2) AttributeError: 'module' object has no attribute 'outrafuncao' 0 1 30 #
  • 70. 70 37 . ! O $ * ! * ) =/5 from módulo import função1, função2, ... 2 37 ! >>> from circulos import potencia,nada >>> potencia(2,3) 8 >>> potencia(3) 9 >>> print potencia.__doc__ potencia(x,y) eleva x a potencia y. Default: y=2. >>> nada() ; 1 from modulo import * 0 37
  • 71. 71 >>> from circulos import * >>> perimetro(4.2) 26.376000000000001 >>> area(-1.) 3.1400000000000001 >>> print area.__doc__ Esta funcao calcula a area de um circulo de raio r. ; $%& & * $ $%& . 0 M N! ! O 3 )" 1 3 3 ! O)" & ! # 9 'N # $%& 9+ < 37 ! 1 ! C >E * 0#"+ >>> import math >>> pi Traceback (most recent call last): File "<pyshell#1>", line 1, in -toplevel- pi NameError: name 'pi' is not defined >>> math.pi
  • 72. 72 3.1415926535897931 >>> from math import pi >>> pi 3.1415926535897931 37 " >>> from math import sin,cos >>> sin(pi) 1.2246063538223773e-016 >>> cos(pi) -1.0 >>> sin(cos(sin(pi))) 0.8414709848078965 >>> from math import * >>> log(1) # o “log” usado aqui é o logaritmo neperiano (base e) 0.0 >>> log10(2) # log10, por sua vez, é o logaritmo de base 10. 0.3010299956639812 >>> pow(2,4) 16.0 >>> print pow.__doc__ pow(x,y) Return x**y (x to the power of y).
  • 73. 73 * &" * & 4 1 ! < 3 & (( %& ( 1& 30 30 )" 0 8 $%& < 8 8 ! 30 0 & / & " BB " & @ 0 &)/&( "& .#L /& & 7 ! ! ! *) )" 0 < ! & & ?R : 30 ? & & ' + =&/#. <=&3#. 3).=".! ! 37 ! ! )" O $%& F ) >>> x=1000 >>> def f(x): return x**2 >>> x 1000 >>> f(9)
  • 74. 74 81 >>> x 1000 + & * ! + 30 # R 1 #2 :6! + : :;;; R & " & < ! 1 X : ' 30 +! 1X >HHH * ' + & O & 3 : + O ' :+VVA / ! " + 1 * + ! >HHH 1 ! >>> type(12) <type 'int'> >>> def type(m): print 'Digitastes',m >>> type(12) Digitastes 12 >>> def tipologia(x): def type(y): print 'Você digitou',y type(x)
  • 75. 75 >>> tipologia(12) Você digitou 12 >>> type(12) Digitastes 12 ! 8& *) ! *) / * 30 1 ! 30 ' O ! +! ! 30 30 ! 30 0 * # * ! M/ N! * 30 2 0 ! * 2 * 0 * ! 4 * * 2 0 0 F ) 1 / 30 ! * * ! ' 30 + < 30 ! 0 ! * 4 & . M * cc 0 N >>> from math import pi >>> r=2.3 >>> def area(incremento): return pi*(r+incremento)**2 >>> area(.7) 28.274333882308138 >>> def volume(inc):
  • 76. 76 return (pi*(t+inc)**3)/3. >>> volume(.4) Traceback (most recent call last): File "<pyshell#108>", line 1, in -toplevel- volume(.4) File "<pyshell#107>", line 2, in volume return (pi*(t+inc)**3)/3. NameError: global name 't' is not defined $ )" ! 0 8 * ! . 30 ! 1 30 * * " >>> def volume(inc): t=0.6 return (pi*(t+inc)**3)/3. >>> volume(.4) 1.0471975511965976 >>> t Traceback (most recent call last): File "<pyshell#112>", line 1, in -toplevel- t
  • 77. 77 NameError: name 't' is not defined 2 " 30 ! 8 ". * >>> def volume(inc): global t t=0.6 return (pi*(t+inc)**3)/3. >>> volume(0.4) 1.0471975511965976 >>> t 0.59999999999999998 / . " * * * )" 1 $ ! 1 from modulo import * 37 ! 0 O 37 ! & ! = & ) 30
  • 78. 78 ' * 30 M 1 N+! ! >>> def sin(pronome): print 'Dê-%s ajuda!' %pronome >>> sin('lhe') Dê-lhe ajuda! >>> from math import * >>> cos(pi) -1.0 >>> sin('me') Traceback (most recent call last): File "<pyshell#131>", line 1, in -toplevel- sin('me') TypeError: a float is required 30 & 30 " & 1 2 6
  • 79. 79 # " =<)! ")B) CCC > #!. )=#$%&( # B).1& 2 1 30 ! ". 30 * 1 O 30 open(‘endereço/nome_do_arquivo.extensão’,’modo_de_abertura’) * 0 * 'M N ! +] # * 'M N ! 1 +] N * 'M-N $ ! . + 4 9 $ * $ * & ! 30 * ! * & ! * & 30 $ 1 ! & ! abertura.close() open('c:/tabela.txt','w').close()! >>> abertura=open('c:/tabela.txt','w')
  • 80. 80 S).(#(& 1 & ! " )" 0 & * 1 2 ! 4 " 9 F" G ) * * 1 $ & ! . >>> abertura.close() <0 3 * * & ! & . O 2 0 & ! *) $%& 2 * 1 1 abertura.close()! " 30 & 2 * . 1 ! 0 " * F * ! O " O ! ! . ! >>> abrindo=open('c:/tabela.txt','a') $ * )" 1 ! 0 ? $ * ! $ 26! >>> abrindo.write('Tabela de dólaresn') ; 30
  • 81. 81 >>> abrindo.write('%sn' %'Tabela de dólares') = 3 )" ! 30 0 print! * & / 37 $ $! ! 1 &9 ^ * * 'n' & ? . % + % ' GH + % P L Q B ( % 9 . ' ' >>> abrindo.close() >>> vamosdigitar=open('c:/tabela.txt','a') >>> for i in range(100): vamosdigitar.write('%i dólares valem %f reaisn' %(i,i*2.98)) >>> vamosdigitar.close() / & 4 S * 1T ; 4 >>> abertura=open('c:/tabela.txt','r')
  • 82. 82 L" 4 . * 4 & & R * ! ''! O >>> abertura.readline() 'Tabela de dxf3lares0' >>> abertura.readline() '0 dólares valem 0.00 reais' >>> abertura.close() ! ! 4 ] & 6 ! )" * * & * >>> w=open('c:/tabela.txt','r') >>> lst=w.readlines() >>> print lst[0] Tabela de dólares >>> print lst[-1] 44 dólares valem 131.1 F + ! 30 2 1 ! 1 ! 1 "
  • 83. 83 ! " ! 1 30 / 2! ! /! ! A A()=& E !(&!& . "0# #/.&!#= R ! ! 1 30 8 * " ? ! 37 ! ) ! 30 O # >>> import os >>> atalho=os.startfile >>> atalho('c:/tabela.txt') < & ! & M N * 8 ! ' + ( 37 O30 & 0 os.startfile('c:/tabela.txt') 2 1 " ' + 1 +! " 1 1 / 2! & ! " 5 1 >>> import os >>> a=os.system
  • 84. 84 F * * 1 >>> a('c:/tabela.txt') 0 * . * ' 9+ >>> a('format c:') / 1 ! " ($%& AC! 1 & * ! S I ! 1 ! * < 1 ! • % ($%& AC! 0 0 "] • % % " ($%& .< ! M< N ] • 1 * " 30 <0 3 ] O < 1 ! " % #
  • 85. 85 ' 4 + " $ & . M N! M N! #instalar.py import os comando=os.system comando('copy a:meumodulo.py c:Python23') NOME=raw_input('Seu nome: ') # Linha 4 NOME='Python-'+NOME comando('md c:''+NOME) # Linha 6 comando('copy a:meuprograma.py c:''+NOME) abrir=os.startfile abrir('a:/leiame.txt') * 1 30 * & B / 2 M N < G & M$%& .< N] M< N " & 4 8 ! )" " ! & ! . T ! * " 30 . & ( ? < >% L % (
  • 86. 86 C .0 #!(&0 F & 1 30 & ! 30 >>> import time >>> time.asctime() 'Thu May 20 11:35:40 2004' >>> time.localtime() (2004, 5, 20, 11, 36, 45, 3, 141, 0) `" ) 3 ! 0 ! ! O >>> salve=time.localtime() >>> print 'Hoje é',salve[2],'do',salve[1],'de',salve[0] Hoje é 20 do 5 de 2004 `" & ! 0 8 ! " ! * & , $ 1 30 ! &
  • 87. 87 >>> from time import time >>> t0=time() ! >>> print 'A execução durou', time()-t0, 'segundos' A execução durou 50.6560001373 segundos 4 O ) / 0 K ! & 4 H > >>> import random >>> sorteio=random.choice >>> a=[] >>> for i in range(10): a.append(raw_input('Nome dos candidatos: ')) Nome dos candidatos: Woiski Nome dos candidatos: Barata Nome dos candidatos: Labaki Nome dos candidatos: Bestinha Nome dos candidatos: Osvaldo Nome dos candidatos: Fred Nome dos candidatos: Thiago
  • 88. 88 >>> a ['Woiski', 'Barata', 'Labaki', 'Bestinha', 'Osvaldo', 'Fred', 'Thiago'] >>> sorteio(a) 'Fred' >>> sorteio(a) 'Ricardo' >>> sorteio(a) 'Labaki' & ) F ) 'ℜ ∈ ZH!>[+ * & ! ! >>> import random >>> num=random.random >>> num() 0.8077947641664176 >>> num() 0.23901444156442075 >>> int(100*num()) 43 >>> for i in range(5): print int(10*num()), 0 5 3 9 4
  • 89. 89 E *"+&! )"&S L 3&! #0.<& L" / 1 30 1 O 1 0 / & ! * 1 & / * . ! " / &&= I )! / . "CCC! f Line 0,0 10,0 10,10 0,10 0,0 $ ! 8 * & * 2 0 & * ! & ! & 1 $ ! & * ! < 6 & & ! )! & M N $ & ! 1 g 1 ' T + ; O &
  • 90. 90 rectangle 0,0 10,10 ^ " < 6 M>H!>HN ^ < 6 & : `" * & & @H M N * " ? F " ] 8 * & $%& )" * ! 0 : ; 37 * 1 #retangulos.py import math raiz=math.sqrt A=float(raw_input('Area inicial: ')) w=open('c:/nosso_script.scr','w') for i in range(1,51): a=raiz(A) w.write('rectanglen') pontoi=str(-a/2)+','+str(-a/2)+'n' pontof=str(a/2)+','+str(a/2)+'n'
  • 91. 91 w.write(pontoi) w.write(pontof) A=2*A w.write('Zoomn') w.write('Extentsn') w.close() D IH e D 5HM N ! O " " " D 8H /! M N & D JH : 30 (A 8 ! % ! & 'Sh T+ J 3 =/5 " & $ " ' + AH! '-2.2360679775,-2.2360679775n' D KH ! 0 ' (A! (A+ D :;H : ')" & + D ::H D :0H/ " 1 # : & & * "
  • 92. 92 D :3 :IH< & ! ) : & ! O30 @ * ( # " ' @ U ./#:0# "& " ! 0 " d ! $ ! 0 ? winsound! ! Beep(freqüência,duração)! # %E( K ! L O! CD CADBD! 30 * : 4 >>> import winsound >>> b=winsound.Beep >>> b(1000,1000) >>> b(500,500) ? $ 4 30 26 ! " $ " 2 < !
  • 93. 93 >>> import time >>> s=time.sleep >>> for i in range(1,5): for j in range(1,5): b(100*j*i,50) s(0.01) s(0.01) / ' " 2: A6 ' 2I69 + L B S#=!(# * & ! 26! 1 ! * 1 E >>> import calendar >>> calendar.isleap(2004) True >>> calendar.isleap(2055) False 4 Leap year: Ano Bissexto.
  • 94. 94 2+ 6 ' . X>! 3. XA! + 3 % 1 >>> calendar.monthrange(2004,5) (5, 31) 4 ! 2+ 6! * " + $ 0 2 ! 8 >>> calendar.prmonth(1922,2) February 1922 Mo Tu We Th Fr Sa Su 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
  • 95. 95 # " E 0 =& 2 ! . " * & ". L" " * & 56C5C #3#=+#!(&/&0 K)!$@ & * 4 " O " * 8 ! 0 ! 0 ! * * 37 ! * 0 " def testa_par(x): if x % 2 == 0: print x,'é um número par' else: print x,'é um número ímpar' def testa_primo(valor): teste=0 for individuo in range(2,valor): if valor % individuo == 0: 5 Não perca tempo digitando estes exemplos: eles estão disponíveis para download em http://labaki.tk
  • 96. 96 teste=teste+1 if teste <> 0: print valor,'não é primo' else: print valor,'é primo' def testa_perfeito(gretagarbo): verifica=1 for qualquerum in range(1,gretagarbo): if gretagarbo % qualquerum == 0: verifica=verifica+qualquerum if verifica == gretagarbo: print gretagarbo,'é perfeito' else: print gretagarbo,'não é perfeito' def procura_divisores(n): lista_de_divisores=[] for i in range(1,n): if n % i == 0: lista_de_divisores.append(i) if len(lista_de_divisores)==0: print n,'Não tem divisores' else: print 'Divisores de',n,':' for i in lista_de_divisores:
  • 97. 97 print i, def soma_algarismos(n): n=str(n) while len(n)>1: m=0 for i in n: m=m+int(i) n=str(m) print n n=int(raw_input('Digite o número a ser analisado: ')) testa_par(n) testa_primo(n) testa_perfeito(n) procura_divisores(n) soma_algarismos(n) " * 30 soma_algarismos & 30 ! K & 'while len(n) > 1+! ' & 30 + R ' while 1: % ' C # 9
  • 98. 98 56C8C /#"/+V0#.= #3#=+#!(&/&0 ".!< * " & * . M$ N 0 M N! & " 3 . * 1 " & 3 . ! . )" & ; 3 * + " 3 1 30 try: w=open('c:/mailcollection.txt','a') except: w=open('c:/mailcollection.txt','w') lista=raw_input('Mail: ') lista=lista.split() for i in range(len(lista)): lista[i]=lista[i].replace('<','').replace('>','').replace(',','') mail=[] for i in range(len(lista)): if lista[i].__contains__('@'): mail.append(lista[i]) for i in range(len(mail)): mail[i]=mail[i]+',' print 'Enderecos capturados:n'
  • 99. 99 for i in mail: print i, w.write(i) w.close() & . * & ' *) J- ! 6 ! +! 65U 65U M N F 3 0 ? F " * * + ! " )" O 2 ' "! 0 1 +! 0 < 1 & ! 2$6! $ $ 3 * >>> 'araraquara'.split('a') ['', 'r', 'r', 'qu', 'r', ''] S T ST ! >>> a='Boa tarde!' >>> a.split() ['Boa', 'tarde!']
  • 100. 100 `" & 2 6 * S*T ST >>> a='Boa tarde!' >>> a.replace('Boa','Péssima') 'Pxe9ssima tarde!' J ! & >> % : !! !!2 :6 &" : % : >>> a='Good Night Vietnam' >>> a.__contains__('Vie') True >>> a.split().__contains__('Vie') False >>> a.split() ['Good', 'Night', 'Vietnam'] >>> a.split().__contains__('Vietnam') True 56C9C S#( .# ( =. "# O " ' >>! >A! ! +
  • 101. 101 & ! & 3 ! 4 ! ordem=int(raw_input('Ordem da matriz: ')) matriz=[] print 'Digite os termos da matriz A' for i in range(ordem): matriz.append([]) for j in range(ordem): termo='A'+str(i+1)+str(j+1) matriz[i].append(float(raw_input('Termo'+termo+': '))) print 'n' print 'Matriz An' for k in range(ordem): for w in range(ordem): print '%7.2f' %matriz[k][w], print 'n' < * # $ ! for i " & O ' ! O + for j ' 1 30 9+ & for i & * ' print 'n' * " * for i+ `" & print 'Matriz An' 0 " 0 " 30 # 30 * 4 * # 4 & 0 1 , * for w
  • 102. 102 & O' 1 $ ; :+ 0 for w! & * 1 56C>C ./.&!J .& &! 1 * O from winsound import Beep from time import sleep print 'Escolha a velocidade de tradução' print 'Rápido (1)' print 'Lento (2)' if int(raw_input('Velocidade: '))==1: vel=0.4 else: vel=1 texto=raw_input('Texto a ser traduzido (minúsculas, sem acentos): ') morse={'m': '--', ',': '--..--', '.': '.-.-.-', '1': '.----', '0': '----- ', '3': '...--', '2': '..---', '5': '.....', '4': '....-', '7': '--...', '6': '-....', '9': '----.', '8': '---..', '?': '..--..', 'a': '.-', 'c': '-.-.', 'b': '-...', 'e': '.', 'd': '-..', 'g': '--.', 'f': '..-.', 'i': '..', 'h': '....', 'k': '-.-', 'j': '.---', 'l': '.-..', 'o': '---', 'n': '-.', 'q': '--.-', 'p': '.--.', 's': '...', 'r': '.-.', 'u': '..-', 't': '-', 'w': '.--', 'v': '...-', 'y': '-.--', 'x': '-..-', 'z': '--..', ' ':'n'} for i in texto: print i,morse[i] for j in range(len(morse[i])):
  • 103. 103 if morse[i][j]=='.': Beep(500,50*vel) sleep(0.1*vel) elif morse[i][j]=='-': Beep(500,150*vel) sleep(0.1*vel) else: sleep(0.3*vel) sleep(0.3*vel) * ? O 1 " 3 ! * 30 " * # ! ! . ! * " " ! * P ,$ # " 1 * 1 ' + & " $ 1 ! 1 " ! M N 0 " M N ZST[! MC M ' ) " + * for j " & ' + &8 '.+ 30 ! @HH LO 4 & ! sleep(0.3*vel)! ; 31 * for j! )! 1 * " 0 0 &8 ' 3 + * " " & " ^! $%& ! $ 8 9
  • 104. 104 56C2C ! N"&! # + &!C / 1 !(& 0 # B).1& O 30 30 ! 8 ! * >H 37 ! ! / * 3 30 ! & 30 = < - .6 & F " < ! 1 30 O 30 ! 30 U> < - .6 & )(' )( 1 n k kk xf xf xx −=+ from math import * from os import startfile from time import time,localtime print 'Operadores especiais disponíveis:' print 'sin, cos, log (neperiano),' print 'log10 (base 10), e sqrt (raiz quadrada).n' funcao=raw_input('Função: ') derivada=raw_input('Derivada: ') x0=float(raw_input('Valor inicial: ')) t0=time()
  • 105. 105 3 ! 30 * f='x-(('+funcao+')/('+derivada+'))' 30 < - .6 & ! )" w=open('c:/newton-raphson.txt','w') w.write(' Newton-Raphsonnn') if localtime()[3]<=12: w.write(' Bom dia!nn') elif 12<localtime()[3]<18: w.write(' Boa tarde!nn') else: w.write(' Boa noite!nn') & * $ + ! " 8 ! 8 " F * ! 26 ! ) 3 C & w.write('Procedimentos para encontrar a raiz de '+funcao+'nn') w.write('Valor inicial: '+str(x0)+'nn')
  • 106. 106 30 * & * & +; ! . . MF N 'nn' ' & * + x=x0 for p in range(10): w.write('Iteração '+str(p+1)+':n') x=eval(f) w.write(str(x)+'n') w.write('n') * >H 37 * 30 < - .6 & 30 2#6 & M1N 1 F ) 1 ' 1 & 0 O - . & 9+ >>> string='2+a+b' >>> a=1 >>> b=5 >>> eval(string) 8 + 1>H * 2 . ! . * $ *
  • 107. 107 'n' $ 2 0 O ! 1 1 " & " 8 w.write('Valor aproximado da raiz: '+str(x)+'nn') 26 ! time()-t0 " H w.write('Tempo para cálculos: '+str(time()-t0)+'n') <0 &" ! 0 & 26! * " # w.close() startfile('c:/newton-raphson.txt') J 3 " 30 $ * ! )" * 1 @ O / 2 0 / P - 0 ) AHHH! & 37 3 t=open('c:/Arquivos de Programas/ACAD2000/graficos.scr','w') `" 30 ! 30 !
  • 108. 108 def arange(xi,xf,i): a=[] while xi<=xf: a.append(xi) xi=xi+i return a S T / AH! 1 ! & t.write('colorn') t.write('20n') 0 & " " ! & " ! 1 2+ #2+66! + 1 O +; / g 9 t.write('linen') funcao=funcao.replace('x','elemento') for elemento in arange(x,x0,0.1): t.write(str(elemento)+','+str(eval(funcao))+'n') t.write('n') t.write('Zoomn') t.write('Extentsn') t.close()
  • 109. 109 1 ! / " &&= I )! / . " 1 # 56C?C 0 4&<).!+& .0 = ( 0 0A .# 4 H I " 4 & ! & K ; ) . 1 $ H ` H $ E ` HE $ D ` HED $ C ` HE@C &) import random r=random.random print 'Memorian' print 'Nao joque usando IDLEn' print 'Digite todos os numeros que forem' print 'informados pelo programa' 3 *) M & N H I
  • 110. 110 escolha=int(10*r()) print escolha a=str(escolha) user=str(int(raw_input('Tente: '))) * " ! 3 ) ) while user==a: escolha=int(10*r()) print escolha a=a+str(escolha) user=str(int(raw_input('Tente: '))) print 'n'*100 & print 'n'*100 >HH & * " 0 & ) ! " ^ ) 0 1 =/5 ! ) 4 2 30 $ 0 ! O 4 " 0 4 & ! )! print 'Voce perdeu!'
  • 111. 111 " * 4 print 'Seu saldo:',len(a) " / 2 0 =/5 ! 0 ) " & ! " 0 * " ! ) * O raw_input('Pressione ENTER para sair') # " F E /G/.& J" $ 1 ! 30 e O * 'A! + e O * '>! +?$ * 0 O * '1+! 1 ? ! " " & )! O 4 ! 1 4 2 & E! 0 E * ! " 4 J 3 * ) , ) 1 ) ) * & & 4 ' ) " @C+
  • 112. 112 / * " 3! 3 ! 1 M5 N & O O ! * 0 / & * M 5 8 N , AHH O F .* , M 5 8 N 0 ! 1 ". x, y = 5, 3 print x print y def one(): x = 1 print x two(x) print x def two(y): print y y = 2 print y z = one y = z() print x print y
  • 113. 113 0 #GCCC ! $%& *) ! 30 *" ! $%& & ^ ! SL T ! $ )" ! ' * 9+ 30 *) ' + $ *) ! $%& ! 9 R ) 3 37 ! * 30 ! 1 * & " * 0 * < 1 * " 1 # ! ! ! ! 30 *) " 30 " 0 30 " < 9 Sua participação é muito importante para a constante melhoria deste material. Ficarei muito honrado em conhecer suas opiniões, sugestões, críticas ou dúvidas sobre ele. Para isso, posso ser encontrado em [email protected]. Agradeço a todos que já colaboraram, em especial ao Prof. E. R. Woiski, Ph.D, pelas observações e a toda a lista python-brasil por diversas mensagens que ajudaram a melhorar muitos pontos ao longo do texto. J. Labaki [email protected] http://labaki.tk " (&/)0 !"& &( (. ".3)G(&=.1 0 !":( ( B) 0#!".(& & / W(."& (&#)"& C