Escolar Documentos
Profissional Documentos
Cultura Documentos
Aula 5 - Teórica
Manipulação de Strings,
Tuplas e Listas
Exemplo
1 >>> s t r . u p p e r ( ’ a b c d e ’ )
2 ’ABCDE ’
Exemplo
1 >>> s t r . u p p e r ( ” E s p e r a n c a ” )
2 ESPERANCA
3
4 >>> s t r . l o w e r ( ”Pe de L a r a n j a Lima ” )
5 pe de l a r a n j a l i m a
Exemplo
1 >>> f r a s e=” macaco come banana”
2 >>> s t r . c o u n t ( f r a s e , ” a ” , 2 , 1 0 )
3 >>> 1
Exemplo
1 >>> s t r . i n d e x ( ” m a r i a n a ” , ” a ” )
2
3 >>> s t r . i n d e x ( ” m a r i a n a ” , ” a ” , 2 )
4
5 >>> s t r . i n d e x ( ” m a r i a n a ” , ” a ” , 5 , 7 )
6
7 >>> s t r . i n d e x ( ’ M a r i a n a ’ , ’ ana ’ )
8
9 >>> s t r . i n d e x ( ’ M a r i a n a ’ , ’ x ’ )
1 >>> a = (1 ,2 ,3 ,4)
2 >>> b = ( 1 . 0 , 2 , ’ 3 ’ , 4+0 j )
3 >>> c = 1 ,2 ,3 ,4
4 >>> d = (1 ,)
Valores em uma tupla podem ser distribuı́dos em variáveis como uma atribuição
múltipla:
1 >>> x = 1 , 2 , 3
2 >>> x
3 (1 , 2 , 3)
4 >>> a , b , c = x
5 >>> a
6 1
7 >>> b
8 2
9 >>> c
10 3
Tupla unitária: contém um único elemento, que deve ser sucedido por uma
vı́rgula.
1 >>> A = ( )
2
3 >>> A = ( 1 0 )
4
5 >>> A = 1 0 ,
6
7 >>> A = ( 1 0 , )
8
9 >>> A = 3∗(10+3)
10
11 >>> A = 3∗ ( 10+3 , )
1 >>> A = ( )
2 () # tupla vazia
3 >>> A = ( 1 0 )
4 10 # i n t e i r o
5 >>> A = 1 0 ,
6 (10 ,) # tupla u n i t r i a
7 >>> A = ( 1 0 , )
8 (10 ,) # tupla u n i t r i a
9 >>> A = 3∗(10+3)
10 39 # i n t e i r o
11 >>> A = 3∗ ( 10+3 , )
12 ( 1 3 , 1 3 , 13) # t u p l a
Concatenação e Replicação
1 >>> x ∗2
2 (1 ,2 ,3 ,1 ,2 ,3)
3 >>> x + ( 5 , 4 )
4 (1 ,2 ,3 ,5 ,4)
Imutabilidade : uma vez criada, uma tupla não pode ser alterada !
1 >>> x [ 0 ] = 9
2 T r a c e b a c k ( most r e c e n t c a l l l a s t ) :
3 F i l e ”< p y s h e l l #2>” , l i n e 1 , i n <module>
4 x [0]=9
5 T y p e E r r o r : ’ t u p l e ’ o b j e c t d o e s no t s u p p o r t i t e m
assignment
b. calcular quanto Joãozinho terá que pedir para sua mãe para comprar um
bombom a mais, dados o dinheiro que ele tem e o preço de um bombom.
Utilize a função definida em a.
b. calcular quanto Joãozinho terá que pedir para sua mãe para comprar um
bombom a mais, dados o dinheiro que ele tem e o preço de um bombom.
Utilize a função definida em a.
1 d e f maisbombom ( d i n h e i r o , p r e c o ) :
2
3 ”Os p a r a m e t r o s de e n t r a d a s a o do t i p o ( f l o a t , f l o a t ) .
4 O v a l o r de r e t o r n o e do t i p o f l o a t ”
5
6 r e t u r n p r e c o − bombom ( d i n h e i r o , p r e c o ) [ 1 ]
a. Escreva uma função que recebe uma tupla e retorna True se o primeiro
elemento for igual ao último elemento da tupla.
a. Escreva uma função que recebe uma tupla e retorna True se o primeiro
elemento for igual ao último elemento da tupla.
1 def i g u a l i f ( tup ) :
2
3 ” Funcao que r e t o r n a True s e o i n i c i o de uma t u p l a e
i g u a l ao s e u f i n a l .
4 O p a r a m e t r o s de e n t r a d a e do t i p o t u p l a .
5 O v a l o r de r e t o r n o e do t i p o b o o l e a n o . ”
6
7 r e t u r n tup [ 0 ] = = tup [ −1]
a. Escreva uma função que recebe uma tupla e retorna True se o primeiro
elemento for igual ao último elemento da tupla.
1 def i g u a l i f ( tup ) :
2
3 ” Funcao que r e t o r n a True s e o i n i c i o de uma t u p l a e
i g u a l ao s e u f i n a l .
4 O p a r a m e t r o s de e n t r a d a e do t i p o t u p l a .
5 O v a l o r de r e t o r n o e do t i p o b o o l e a n o . ”
6
7 r e t u r n tup [ 0 ] = = tup [ −1]
b. Escreva uma função inverte que recebe uma tupla de três elementos e
retorna uma nova tupla com os elementos na ordem reversa.
1 def i n v e r t e ( tup ) :
2
3 ” Funcao que i n v e r t e e l e m e n t o s de uma t u p l a de tamanho
3.
4 O p a r a m e t r o s de e n t r a d a e uma t u p l a de tamanho 3 .
5 O v a l o r de r e t o r n o e uma t u p l a de tamanho 3 . ”
6
7 r e t u r n tup [ : : − 1 ]
Exercı́cios
c. Escreva a função intercala que recebe duas tuplas de três elementos cada
e retorna uma tupla de seis elementos intercalando as duas tuplas.
d. Escreva a função opera que recebe uma tupla com uma string e dois
números; se a string for ’SOMA’, retorna a soma dos dois números, se for
’MULT’, retorna a multiplicação, se for ’DIV’, retorna a divisão, se for
’SUB’, retorna a subtração, se não for nenhuma das anteriores retorna
None.
Exemplo
1 >>> l i s t a 3 = [ ]
2 >>> l i s t a 3 [ 0 ]
3 T r a c e b a c k ( most r e c e n t c a l l l a s t ) :
4 F i l e ”< p y s h e l l #18>” , l i n e 1 , i n <module>
5 lista3 [0]
6 I n d e x E r r o r : l i s t i n d e x o ut o f r a n g e
1 >>> [ 1 , 2 ] + [ 3 ]
2
3 >>> [ 1 , 2 ] + [ [ 3 ] ]
4
5 >>> [ [ 1 , 2 ] ] + [ [ 3 ] ]
6
7 >>> [ 1 , 2 ] ∗ 3
1 >>> [ 1 , 2 ] + [ 3 ] # C o n c a t e n a n d o L i s t a s
2 [1 , 2 , 3]
3
4 >>> [ 1 , 2 ] + [ [ 3 ] ]
5 [1 , 2 , [ 3 ] ]
6
7 >>> [ [ 1 , 2 ] ] + [ [ 3 ] ]
8 [[1 , 2] , [ 3 ] ]
9
10 >>> [ 1 , 2 ] ∗ 3 # E q u i v a l e a [ 1 , 2 ] + [ 1 , 2 ] + [ 1 , 2 ]
11 [1 , 2 , 1 , 2 , 1 , 2]
1 >>> [ 1 , 2 ] ∗ [ 3 ]
2
3 >>> [ 1 , 2 ] − [ 3 ]
Faça uma função que receba duas listas como entrada e retorne a
concatenação destas listas.
Faça uma função que receba duas listas como entrada e retorne a
concatenação destas listas.
1 def concatenaLi stas ( Lista1 , Li sta2 ) :
2
3 ” Funcao que da da s dua s l i s t a s , r e t o r n a a c o n c a t e n a c a o da s
listas .
4 O p a r a m e t r o s de e n t r a d a s a o l i s t , l i s t .
5 O v a l o r de r e t o r n o e l i s t . ”
6
7 r e t u r n L i s t a 1+L i s t a 2
1 >>> c o n c a t e n a L i s t a s ( [ 1 , 2 , 3 ] , [ 4 , 5 , 6 ] )
2 [1 ,2 ,3 ,4 ,5 ,6]
1 >>> r a n g e ( 1 0 )
2 [0 , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9]
range(inf,sup): retorna uma lista contendo uma sequência de
valores de inf a sup-1
1 >>> r a n g e ( 3 , 8 )
2 [3 , 4 , 5 , 6 , 7]
range(inf, sup, inc): retorna uma lista contendo uma sequência de
valores de inf a sup-1 com incremento de inc
1 >>> r a n g e ( 3 , 8 , 2 )
2 [3 , 5 , 7]
São equivalentes:
range(10)
range(0,10)
range(0,10,1)
Exemplos
1 >>> r a n g e ( 3 )
2
3 >>> r a n g e ( 2 , 5 , 2 )
4
5 >>> r a n g e ( 5 , 2 , − 2 )
São equivalentes:
range(10)
range(0,10)
range(0,10,1)
Exemplos
1 >>> r a n g e ( 3 )
2 [0 ,1 ,2]
3 >>> r a n g e ( 2 , 5 , 2 )
4 [2 ,4]
5 >>> r a n g e ( 5 , 2 , − 2 )
6 [5 ,3]
1 >>> l i s t a ( 5 )
2 [2 ,4]
3
4 >>> l i s t a ( 6 )
5 [2 ,4 ,6]
2. Faça uma função que, dados dois inteiros x e y , retorna uma lista com
todos os valores entre x e y (inclusive), funcionando tanto para x <= y
como para x > y .
Exemplos
x = 2, y = 6, resultado = [2, 3, 4, 5, 6]
x = 10, y = 7, resultado = [10, 9, 8, 7]
3. Faça uma função que dadas duas listas de 3 numeros, representando dois
vetores no espaço ℜ3 , retorna uma lista que represente a soma destes dois
vetores.
Exemplo
Lista1 = [1,4,6]
Lista2 = [2,4,3]
Lista resultante = [3,8,9]
Colaboradores
Fabio Mascarenhas Lattes