Sei sulla pagina 1di 2

Computação I - Python - Lista de Exercı́cios 5

ATENÇÃO
• para cada exercı́cio, coloque um comentário dizendo o que a função faz;
• coloque um comentário dizendo os tipos de dados dos parâmetros de entrada e dos
resultados. Exemplo:
int, int → str
no caso de uma função cuja entrada são dois inteiros e o resultado é uma string;

• escolha nomes elucidativos para suas funções e parâmetros;


• teste sua função com diversas entradas para garantir que está correta;
• escreva todas as suas funções em um arquivo com nome
lista5 nome sobrenome 06 09.py e envie para juanctb@dcc.ufrj.br com o assunto
[COMP1CMT] Lista 5 - Nome e sobrenome. Escreva seu nome completo e
DRE no corpo do e-mail.

Mais funções para manipulação de strings:

str.split(s,sep) - retorna uma lista de substrings presentes entre as ocorrências de sep. Se sep não for especifi-
cado, é assumido sequências de caracteres em branco, tabs ou newlines.
>>> s = ’A B C D’
>>> str.split(s)
[’A’,’B’,’C’,’D’]
>>> s = ’AXBXCXD’
>>> str.split(s,’X’)
[’A’,’B’,’C’,’D’]

str.join(sep,seq) - faz o contrário do split, retorna uma string unindo todos os elementos da sequência seq, usando
sep como separador. Os elementos de seq devem ser strings.

>>> str.join(’/’,(’C:’,’Users’,’Juan’))
’C:/Users/Juan’
>>> str.join(’Q’,[’1’,’2’,’3’])
’1Q2Q3’

str.strip(s, ch) - retorna a string sem caracteres iniciais ou finais que estejam na string ch. Se ch não for especificada,
retira caracteres em branco.

>>> str.strip(" xxx asdfa ")


’xxx asdfa’
>>> str.strip(’xxx yyy zzz xxx’,’xy ’)
’zzz’

1. Escreva uma função que receba uma palavra e retorne esta palavra ao contrário e com todas as letras maiúsculas.

2. Escreva uma função que receba uma string e retorne uma tupla com 5 inteiros, onde cada inteiro é o número de
ocorrências de cada vogal na string.

1
3. Escreva uma função que receba uma string s e um caracter c, e retorne o ı́ndice da segunda ocorrência de c em s. Se
s não possuir pelo menos duas ocorrências de c, a função deve retornar uma mensagem informando isso.

4. Faça uma função que dada uma frase, retorne o número de palavras da frase. Considere que a frase pode ter espaços
no inı́cio e no final.

5. Escreva uma função que recebe duas tuplas não vazias e retorne uma tupla contendo o primeiro elemento da maior
tupla e o último elemento da menor tupla.

6. Faça uma função que dada uma frase, substitua todos os espaços em branco por ‘#’.

7. Faça uma função que dadas duas listas L1 e L2 de tamanho 3, gera uma lista L3 que é formada intercalando os
elementos de L1 e L2. Exemplo: L1 = [1, 3, 5] e L2 = [2, 4, 6] gera L3 = [1, 2, 3, 4, 5, 6].

8. Escreva uma função que receba duas listas: uma com 3 nomes e outra com 3 notas. A função deve retorna uma lista
de tamanho 3, onde cada elemento será uma tupla de 2 valores, associando cada nome à sua média de acordo com as
respectivas posições das listas.
Exemplo:

>>> nome_media([’joaozinho’,’pedrinho’,’mariazinha’],[7.5,5.0,8.3])
[(’joaozinho’,7.5),(’pedrinho’,5.0),(’mariazinha’,8.5)]

9. Escreva uma função que receba dois inteiros n e m e retorne uma lista de inteiros de 1 até n (inclusive), exceto pelo
número m, que deve ser multiplicado por 2 na lista final. Caso m > n, a lista deve conter apenas os inteiros entre 1 e
n.
Exemplos:

>>> gera_lista(6,4)
[1,2,3,8,5,6]
>>> gera_lista(5,10)
[1,2,3,4,5]

Potrebbero piacerti anche