Buscar

Aula7 - Strings - python

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 29 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 29 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 29 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Aula 7– Strings e Tuplas 
2 
Métodos associados a String 
• Uma string possui vários métodos (funções) disponíveis para executar 
diferentes tarefas. 
 
• Para utilizar um método, deve-se usar a sintaxe: 
 identificador.método(parâmetros). 
 
 
 
 
 
• Para listar os métodos (e outros atributos) disponíveis, utilize o comando: 
 dir(identificador). 
Computação I - aula 7 - 2014/1 
3 
Métodos associados a String 
• Para obter a descrição de um item, digite: 
 identificador.item.__doc__ 
 
• Para obter ajuda a respeito de um tipo, digite help(tipo). 
 
 Por exemplo: help(str) para obter ajuda sobre strings, 
 help(int) para ajuda sobre inteiros, etc.. 
Computação I - aula 7 - 2014/1 
4 
String - Métodos 
lower(): retorna a string com todos os caracteres maiúsculos 
convertidos para minúsculos. 
 
upper(): retorna a string com todos os caracteres minúsculos 
convertidos para maiúsculos. 
 
Exemplo 
 
>>> "Esperança".upper() 
 ESPERANÇA 
 
>>> "Pé de Laranja Lima".lower() 
 pé de laranja lima 
 
Computação I - aula 7 - 2014/1 
5 
String - Métodos 
count(elemento, inicio, fim): retorna quantas vezes o elemento aparece na 
string, procurando-se a partir da posição inicio e indo até a posição fim - 1. 
 
• inicio e fim são opcionais. 
 
Exemplo 
 
 
Computação I - aula 7 - 2014/1 
6 
String - Métodos 
index(elemento, inicio, fim): retorna o índice da primeira ocorrência de 
elemento na string, a partir da posição inicio, até a posição fim - 1. 
 
• Inicio e fim são opcionais. 
 
Exemplo 
 
 
Computação I - aula 7 - 2014/1 
7 
String - Métodos 
find(substring,inicio,fim): Retorna o índice da primeira ocorrência de substring. 
- inicio e fim são opcionais e indicam os intervalos de índices onde a busca será 
efetuada. Os defaults são, respectivamente, 0 e comprimento da string. 
- Caso substring não apareça na string, é retornado -1. 
- Note que o operador in pode ser usado para dizer se uma substring aparece numa 
string. 
 
Exemplo 
>>> s = "quem parte e reparte, fica com a maior parte" 
>>> s.find("parte") 
 5 
>>> s.find("reparte") 
 13 
>>> s.find("parcela") 
 -1 
>>> "parte" in s 
 True 
>>> s.find("parte",6) 
 15 
>>> s.find("parte",6,12) 
 -1 
 
Computação I - aula 7 - 2014/1 
8 
String - Métodos 
partition(sep): divide uma string em 3 partes : o que vem antes de sep, 
sep e o que vem após sep. 
 
• Caso sep não seja encontrado, a string é retornada seguida por duas 
strings vazias. 
 
Exemplo 
>>> s = "quem parte e reparte, fica com a maior parte" 
 
>>> s.partition("t") 
 
('quem par', 't', 'e e reparte, fica com a maior parte') 
 
>>>s.partition("z") 
 
('quem parte e reparte, fica com a maior parte', '', '') 
9 
String - Métodos 
join(sequencia): retorna uma string com todos os elementos da sequencia concatenados. 
 
Observação: Os elementos da sequência têm que ser strings. 
 
Importante: A string objeto é usada como separador entre os elementos. 
 
Exemplo 
>>> "/".join(("usr","bin","python")) ou "/".join(["usr","bin","python“]) 
 'usr/bin/python' 
 
>>> "Q".join((1,2,3,4,5)) 
 TypeError: sequence item 0: expected string, 
 int found 
 
>>> "Q".join(('1','2','3','4','5')) 
 '1Q2Q3Q4Q5' 
 
>>> Q.join(('1','2','3','4','5')) 
 Traceback (most recent call last): 
 File "<pyshell#3>", line 1, in <module> 
 Q.join(('1','2','3','4','5')) 
 NameError: name 'Q' is not defined 
10 
String - Métodos 
Exercício: 
 
Escreva uma função que receba duas strings a e b, e retorne a 
concatenação delas no formato abba. 
Computação I - aula 7 - 2014/1 
11 
String - Métodos 
Exercício: 
 
Escreva uma função que receba duas strings a e b, e retorne a 
concatenação delas no formato abba. 
Computação I - aula 7 - 2014/1 
12 
String - Métodos 
split(separador): retorna uma lista com as substrings presentes entre 
cópias da string separador. 
 
Se separador não for especificado, é assumido sequências de caracteres 
em branco, tabs ou newlines. 
 
Exemplo 
 >>> s = "xxx yyy zzz xxx yyy zzz" 
 
 >>> s.split() 
 ['xxx', 'yyy', 'zzz', 'xxx', 'yyy', 'zzz'] 
 
 >>> s.split('zzz') 
 ['xxx yyy ', ' xxx yyy ', ''] 
 
13 
String - Métodos 
strip(ch): retorna a string sem caracteres iniciais ou finais que estejam na string ch. 
Se ch não for especificada, retira caracteres em branco. 
 
• Pode-se também usar rstrip() e lstrip() para retirar caracteres, respectivamente, à 
direita (final) ou à esquerda(início). 
 
Exemplo 
>>> " xxx afdsfa ".strip() 
 'xxx afdsfa' 
 
>>> "xxx yyy zzz xxx".strip("xy ") 
 'zzz' 
 
>>> " xxx".rstrip() 
 ' xxx' 
 
Computação I - aula 7 - 2014/1 
14 
Exercício 
A partir da string "!! ! a;b;c;d;e;f;gh!###########" gere o resultado: 
['a','b','c','d','e','f','g'] 
 
Computação I - aula 7 - 2014/1 
15 
Exercício 
A partir da string "!! ! a;b;c;d;e;f;gh!###########" gere o resultado: 
['a','b','c','d','e','f','g'] 
 
Computação I - aula 7 - 2014/1 
16 
String - Métodos 
replace(velho,novo,n): substitui as n instâncias da string velho por novo. 
 Se n não for definido, todas as trocas são feitas. 
 
Exemplo 
>>> s = "quem parte e reparte, fica com a maior parte" 
 
>>> s.replace("parte","parcela") 
 'quem parcela e reparcela, fica com a maior parcela' 
 
>>> s.replace("parte","parcela",2) 
 'quem parcela e reparcela, fica com a maior parte' 
Computação I - aula 7 - 2014/1 
17 
Exemplo 
Escreva uma função que dada uma frase, uma palavra existente na frase, e uma 
nova palavra, substitua a ÚLTIMA ocorrência da palavra antiga pela palavra 
nova. 
Exemplo: 
Frase: “quem parte e reparte fica com a maior parte” 
Palavra existente na frase: “parte” 
Palavra nova: “parcela” 
Resposta: “quem parte e reparte fica com a maior parcela” 
Computação I - aula 7 - 2014/1 
18 
Exemplo 
Resposta: 
Computação I - aula 7 - 2014/1 
19 
String - Métodos 
 
 
 
translate(trans): retorna uma cópia da string onde os caracteres são substituídos de 
acordo com a tabela de tradução trans. 
 
maketrans(velho,novo): retorna uma tabela de tradução onde os caracteres em velho 
são substituídos pelos caracteres em novo. 
 
Exemplo 
 
>>> from string import maketrans #necessário na versão 2.x 
 
>>> trans = maketrans('qs', 'kz') 
# ou trans = “”.maketrans('qs', 'kz') na versão 3.2 
 
>>> s = "que surpresa: quebrei a cara" 
 
>>> s.translate(trans) 
 'kue zurpreza: kuebrei a cara' 
 
Computação I - aula 7 - 2014/1 
20 
String - Métodos 
 
 
 
Exercício 
 
Dado uma string representando uma cadeia de DNA, faça uma função 
que gere a sua cadeia complementar. 
Lembre que A<->T e C<->G. 
 
Exemplo: 
Dado AATCTGCAC, a função retorna TTAGACGTG. 
 
Computação I - aula 7 - 2014/1 
21 
String - Métodos 
 
 
 
Exercício 
 
Dado uma string representando uma cadeia de DNA, faça uma função que 
gere a sua cadeia complementar. Lembre que A<->T e C<->G. 
 
Exemplo: 
Dado AATCTGCAC, a função retorna TTAGACGTG. 
 
 
Computação I - aula 7 - 2014/1 
22 
Tuplas 
Tuplas 
● Uma tupla é uma sequência heterogênea (permite que seus elementos 
sejam de tipos diferentes). 
 
 
 
 
● Tupla unitária: contém um único elemento, que deve ser sucedido por 
uma vírgula. 
● Os parênteses são opcionais se não provocarem ambiguidade.Computação I - aula 7 - 2014/1 
Tuplas 
- Um valor entre parênteses sem vírgula no final é meramente uma 
expressão 
 
>>> (10) >>> 3*(10+3) 
10 39 
>>> 10, >>> 3*(10+3,) 
(10,) (13, 13, 13) 
>>> (10,) 
(10,) 
 
 
 
 
 
Computação I - aula 7 - 2014/1 
Tuplas 
● Tuplas são muito similares às strings em relação às operações: 
● O tamanho de uma tupla é dado pelo comando len. 
● Indexação: começando do 0 à esquerda, ou de -1 à direita. 
● Fatiamento: idêntico às strings. 
● Imutabilidade. 
● Concatenação e replicação. 
 
 
Computação I - aula 7 - 2014/1 
Tuplas 
Exemplo: 
Joãozinho quer comprar o maior número de bombons possível com o 
dinheiro que tem. Faça funções para: 
a. calcular o número de bombons e o troco, dados o dinheiro e o preço de 
um bombom. 
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. 
 
Computação I - aula 7 - 2014/1 
Tuplas 
Exemplo: 
 
Computação I - aula 7 - 2014/1 
Tuplas - Métodos 
● tupla.count(elemento): retorna o número de ocorrências de elemento 
na tupla. 
 
 
 
● tupla.index(elemento, inicio, fim): retorna o índice da primeira 
ocorrência de elemento na tupla, a partir da posição inicio, até a 
posição fim - 1. Inicio e fim são opcionais. 
Computação I - aula 7 - 2014/1 
29 
Aula 7 – Strings e Tuplas

Outros materiais