programação de computadoresotton/graduacao/programacao/10_str... · podemos fazer uma lista se...
TRANSCRIPT
![Page 1: Programação de Computadoresotton/graduacao/programacao/10_str... · Podemos fazer uma lista se “transformar“ numa cadeia de caracteres De quebra no próximo exemplo faremos](https://reader033.vdocuments.mx/reader033/viewer/2022050202/5f55b73582e34e725f7498ce/html5/thumbnails/1.jpg)
Programação de Computadores
Instituto de Computação UFFDepartamento de Ciência da Computação
Otton Teixeira da Silveira Filho
![Page 2: Programação de Computadoresotton/graduacao/programacao/10_str... · Podemos fazer uma lista se “transformar“ numa cadeia de caracteres De quebra no próximo exemplo faremos](https://reader033.vdocuments.mx/reader033/viewer/2022050202/5f55b73582e34e725f7498ce/html5/thumbnails/2.jpg)
Conteúdo
● Caracteres e Cadeia de Caracteres
● Cadeia de Caracteres e listas
● Operações específicas para cadeias de caracteres:
funções e métodos
● Uma outra compreenção sobre o for
● Uso do del()
● Exercícios
![Page 3: Programação de Computadoresotton/graduacao/programacao/10_str... · Podemos fazer uma lista se “transformar“ numa cadeia de caracteres De quebra no próximo exemplo faremos](https://reader033.vdocuments.mx/reader033/viewer/2022050202/5f55b73582e34e725f7498ce/html5/thumbnails/3.jpg)
str-cadeias de caracteres
O tipo str em Python reserva espaço na memória do computador e permite atribuirmos os caracteres que estão definidos na tabela ASCII e suas extensões
![Page 4: Programação de Computadoresotton/graduacao/programacao/10_str... · Podemos fazer uma lista se “transformar“ numa cadeia de caracteres De quebra no próximo exemplo faremos](https://reader033.vdocuments.mx/reader033/viewer/2022050202/5f55b73582e34e725f7498ce/html5/thumbnails/4.jpg)
Tabela ASCII
Caracteres - 1 B
![Page 5: Programação de Computadoresotton/graduacao/programacao/10_str... · Podemos fazer uma lista se “transformar“ numa cadeia de caracteres De quebra no próximo exemplo faremos](https://reader033.vdocuments.mx/reader033/viewer/2022050202/5f55b73582e34e725f7498ce/html5/thumbnails/5.jpg)
Exemplos com caracteres
Observe que temos um número inteiro associado a cada caracter. Por reconhecer o tipo da variável como str (e se referenciar ao número associado na tabela) é que os programas que estejam executando no computador reagem a estas variáveis de forma conveniente.
![Page 6: Programação de Computadoresotton/graduacao/programacao/10_str... · Podemos fazer uma lista se “transformar“ numa cadeia de caracteres De quebra no próximo exemplo faremos](https://reader033.vdocuments.mx/reader033/viewer/2022050202/5f55b73582e34e725f7498ce/html5/thumbnails/6.jpg)
Exemplos com caracteres
As atribuições de caracteres são feitas de forma similar aos outros tipos já apresentados, como no fragmento abaixo
…
a = '/'
b = 'B'
c = a
...
![Page 7: Programação de Computadoresotton/graduacao/programacao/10_str... · Podemos fazer uma lista se “transformar“ numa cadeia de caracteres De quebra no próximo exemplo faremos](https://reader033.vdocuments.mx/reader033/viewer/2022050202/5f55b73582e34e725f7498ce/html5/thumbnails/7.jpg)
Exemplos com caracteres
Podemos fazer comparações entre caracteres nos lembrando de que as referências serão sempre os valores da tabela ASCII
![Page 8: Programação de Computadoresotton/graduacao/programacao/10_str... · Podemos fazer uma lista se “transformar“ numa cadeia de caracteres De quebra no próximo exemplo faremos](https://reader033.vdocuments.mx/reader033/viewer/2022050202/5f55b73582e34e725f7498ce/html5/thumbnails/8.jpg)
Mais um exemplo com caracteres
...
![Page 9: Programação de Computadoresotton/graduacao/programacao/10_str... · Podemos fazer uma lista se “transformar“ numa cadeia de caracteres De quebra no próximo exemplo faremos](https://reader033.vdocuments.mx/reader033/viewer/2022050202/5f55b73582e34e725f7498ce/html5/thumbnails/9.jpg)
Exemplos com caracteres
Experimente teclar algo como a letra S e a letra s e depois olhe a correspondência na tabela ASCII
![Page 10: Programação de Computadoresotton/graduacao/programacao/10_str... · Podemos fazer uma lista se “transformar“ numa cadeia de caracteres De quebra no próximo exemplo faremos](https://reader033.vdocuments.mx/reader033/viewer/2022050202/5f55b73582e34e725f7498ce/html5/thumbnails/10.jpg)
Exemplos com caracteres
Podemos acessar os elementos do tipo str pelo seus índices
![Page 11: Programação de Computadoresotton/graduacao/programacao/10_str... · Podemos fazer uma lista se “transformar“ numa cadeia de caracteres De quebra no próximo exemplo faremos](https://reader033.vdocuments.mx/reader033/viewer/2022050202/5f55b73582e34e725f7498ce/html5/thumbnails/11.jpg)
Exemplos com caracteres
...
![Page 12: Programação de Computadoresotton/graduacao/programacao/10_str... · Podemos fazer uma lista se “transformar“ numa cadeia de caracteres De quebra no próximo exemplo faremos](https://reader033.vdocuments.mx/reader033/viewer/2022050202/5f55b73582e34e725f7498ce/html5/thumbnails/12.jpg)
Cadeia de caracteres
Outra maneira é trabalharmos nossa entrada como lista
![Page 13: Programação de Computadoresotton/graduacao/programacao/10_str... · Podemos fazer uma lista se “transformar“ numa cadeia de caracteres De quebra no próximo exemplo faremos](https://reader033.vdocuments.mx/reader033/viewer/2022050202/5f55b73582e34e725f7498ce/html5/thumbnails/13.jpg)
Exemplos com cadeias de caracteres
...
![Page 14: Programação de Computadoresotton/graduacao/programacao/10_str... · Podemos fazer uma lista se “transformar“ numa cadeia de caracteres De quebra no próximo exemplo faremos](https://reader033.vdocuments.mx/reader033/viewer/2022050202/5f55b73582e34e725f7498ce/html5/thumbnails/14.jpg)
Cadeias de caracteres
Experimente usar type() para verificar se temos realmente uma lista como saída do input()
● Isto é devido ao split()
![Page 15: Programação de Computadoresotton/graduacao/programacao/10_str... · Podemos fazer uma lista se “transformar“ numa cadeia de caracteres De quebra no próximo exemplo faremos](https://reader033.vdocuments.mx/reader033/viewer/2022050202/5f55b73582e34e725f7498ce/html5/thumbnails/15.jpg)
Cadeias de caracteres
Observe que Python faz umas gentilezas para o programador mas é bom ser explícito sempre que possível e conveniente para não haver mal entendidos
![Page 16: Programação de Computadoresotton/graduacao/programacao/10_str... · Podemos fazer uma lista se “transformar“ numa cadeia de caracteres De quebra no próximo exemplo faremos](https://reader033.vdocuments.mx/reader033/viewer/2022050202/5f55b73582e34e725f7498ce/html5/thumbnails/16.jpg)
Tipos mutáveis e imutáveis
Temos formas diferentes de trabalhar ao usarmos um tipo ou outro, cada um com suas vantagens e desvantagens
Há uma grande diferença entre o tipo str e list:
Enquanto list é mutável str é imutável, ou seja, podemos alterar diretamente os valores de uma lista mas o mesmo não pode ser feito com uma cadeia de caracteres
![Page 17: Programação de Computadoresotton/graduacao/programacao/10_str... · Podemos fazer uma lista se “transformar“ numa cadeia de caracteres De quebra no próximo exemplo faremos](https://reader033.vdocuments.mx/reader033/viewer/2022050202/5f55b73582e34e725f7498ce/html5/thumbnails/17.jpg)
Tipos mutáveis e imutáveis
Temos formas diferentes de trabalhar ao usarmos um tipo ou outro, cada um com suas vantagens e desvantagens
Há uma grande diferença entre o tipo str e list:
Enquanto list é mutável str é imutável, ou seja, podemos alterar diretamente os valores de uma lista mas o mesmo não pode ser feito com uma cadeia de caracteres
● Numa lista constituída de elementos do tipo cadeia de caracteres (str), podemos mudar o conteúdo da lista mas não a cadeia de caracter
![Page 18: Programação de Computadoresotton/graduacao/programacao/10_str... · Podemos fazer uma lista se “transformar“ numa cadeia de caracteres De quebra no próximo exemplo faremos](https://reader033.vdocuments.mx/reader033/viewer/2022050202/5f55b73582e34e725f7498ce/html5/thumbnails/18.jpg)
Tipos simples e compostos
É bom observar novamente que diferente dos tipos como int, float, bool, ditos tipos simples ou primitivos, str é um tipo composto, ou seja, ele é constituído de “partes menores”.
Por exemplo, uma frase é constituída de ‘palavras’ (sub cadeias) e estas por caracteres (sub cadeias das ‘palavras’)
![Page 19: Programação de Computadoresotton/graduacao/programacao/10_str... · Podemos fazer uma lista se “transformar“ numa cadeia de caracteres De quebra no próximo exemplo faremos](https://reader033.vdocuments.mx/reader033/viewer/2022050202/5f55b73582e34e725f7498ce/html5/thumbnails/19.jpg)
Operador in
Vejamos um operador que será útil no momento, embora ele já tenha sido apresentado informalmente
![Page 20: Programação de Computadoresotton/graduacao/programacao/10_str... · Podemos fazer uma lista se “transformar“ numa cadeia de caracteres De quebra no próximo exemplo faremos](https://reader033.vdocuments.mx/reader033/viewer/2022050202/5f55b73582e34e725f7498ce/html5/thumbnails/20.jpg)
Operador in
Vejamos um operador que será útil no momento, embora ele já tenha sido apresentado informalmente
● in
Este operador retorna se falso ou verdadeiro se dada uma subcadeia (substring) se encontra em outra cadeia de caracteres
![Page 21: Programação de Computadoresotton/graduacao/programacao/10_str... · Podemos fazer uma lista se “transformar“ numa cadeia de caracteres De quebra no próximo exemplo faremos](https://reader033.vdocuments.mx/reader033/viewer/2022050202/5f55b73582e34e725f7498ce/html5/thumbnails/21.jpg)
Operador in
Exemplos:
● ‘o‘ in “Tom“ retornará True
● ‘t‘ in “Tom“ retornará False
![Page 22: Programação de Computadoresotton/graduacao/programacao/10_str... · Podemos fazer uma lista se “transformar“ numa cadeia de caracteres De quebra no próximo exemplo faremos](https://reader033.vdocuments.mx/reader033/viewer/2022050202/5f55b73582e34e725f7498ce/html5/thumbnails/22.jpg)
Operador in
![Page 23: Programação de Computadoresotton/graduacao/programacao/10_str... · Podemos fazer uma lista se “transformar“ numa cadeia de caracteres De quebra no próximo exemplo faremos](https://reader033.vdocuments.mx/reader033/viewer/2022050202/5f55b73582e34e725f7498ce/html5/thumbnails/23.jpg)
Exemplos com cadeias de caracteres
Aqui vemos que temos uma autêntica operação lógica que pode simplificar operações com cadeias de caracteres
![Page 24: Programação de Computadoresotton/graduacao/programacao/10_str... · Podemos fazer uma lista se “transformar“ numa cadeia de caracteres De quebra no próximo exemplo faremos](https://reader033.vdocuments.mx/reader033/viewer/2022050202/5f55b73582e34e725f7498ce/html5/thumbnails/24.jpg)
Exemplos com cadeias de caracteres
Aqui vemos que temos uma autêntica operação lógica que pode simplificar operações com cadeias de caracteres
Vejamos um uso do for de outra forma
![Page 25: Programação de Computadoresotton/graduacao/programacao/10_str... · Podemos fazer uma lista se “transformar“ numa cadeia de caracteres De quebra no próximo exemplo faremos](https://reader033.vdocuments.mx/reader033/viewer/2022050202/5f55b73582e34e725f7498ce/html5/thumbnails/25.jpg)
Exemplos com cadeias de caracteres
![Page 26: Programação de Computadoresotton/graduacao/programacao/10_str... · Podemos fazer uma lista se “transformar“ numa cadeia de caracteres De quebra no próximo exemplo faremos](https://reader033.vdocuments.mx/reader033/viewer/2022050202/5f55b73582e34e725f7498ce/html5/thumbnails/26.jpg)
Mais sobre o for
Aqui vemos mais sobre as possibilidades do for. Relembre que ele é descrito como
for elemento_do_iterador in iterador: comandos
onde iterador não se limita ao gerado pelo range() mas também pode ser lista, cadeia de caracteres e outros tipos compostos
![Page 27: Programação de Computadoresotton/graduacao/programacao/10_str... · Podemos fazer uma lista se “transformar“ numa cadeia de caracteres De quebra no próximo exemplo faremos](https://reader033.vdocuments.mx/reader033/viewer/2022050202/5f55b73582e34e725f7498ce/html5/thumbnails/27.jpg)
Cadeias de caracteres
Podemos fazer uma lista se “transformar“ numa cadeia de caracteres
De quebra no próximo exemplo faremos uso de uma função já apresentada len() e também de uma sobrecarga do operador + que já vimos anteriormente
![Page 28: Programação de Computadoresotton/graduacao/programacao/10_str... · Podemos fazer uma lista se “transformar“ numa cadeia de caracteres De quebra no próximo exemplo faremos](https://reader033.vdocuments.mx/reader033/viewer/2022050202/5f55b73582e34e725f7498ce/html5/thumbnails/28.jpg)
Cadeias de caracteres
![Page 29: Programação de Computadoresotton/graduacao/programacao/10_str... · Podemos fazer uma lista se “transformar“ numa cadeia de caracteres De quebra no próximo exemplo faremos](https://reader033.vdocuments.mx/reader033/viewer/2022050202/5f55b73582e34e725f7498ce/html5/thumbnails/29.jpg)
Exemplos com cadeias de caracteres
Observe que criamos uma cadeira de caracteres vazia introduzindo nenhum caracter
O “problema” que temos está na impressão sem espaços em branco da cadeia de caracteres.
Mas, é claro, foi precisamente o que pedimos para ser feito...
Vamos adicionar espaços em branco para nosso conforto...
![Page 30: Programação de Computadoresotton/graduacao/programacao/10_str... · Podemos fazer uma lista se “transformar“ numa cadeia de caracteres De quebra no próximo exemplo faremos](https://reader033.vdocuments.mx/reader033/viewer/2022050202/5f55b73582e34e725f7498ce/html5/thumbnails/30.jpg)
Cadeia de caracteres
![Page 31: Programação de Computadoresotton/graduacao/programacao/10_str... · Podemos fazer uma lista se “transformar“ numa cadeia de caracteres De quebra no próximo exemplo faremos](https://reader033.vdocuments.mx/reader033/viewer/2022050202/5f55b73582e34e725f7498ce/html5/thumbnails/31.jpg)
Cadeia de caracteres
Ficou mais legível e ganhamos um pouco mais de conhecimento de manipulação de cadeia de caracteres
![Page 32: Programação de Computadoresotton/graduacao/programacao/10_str... · Podemos fazer uma lista se “transformar“ numa cadeia de caracteres De quebra no próximo exemplo faremos](https://reader033.vdocuments.mx/reader033/viewer/2022050202/5f55b73582e34e725f7498ce/html5/thumbnails/32.jpg)
Cadeia de caracteres
Vejamos mais algumas operações que podemos fazer diretamente com o tipo str
● count(item_a) – conta o número de ocorrências de item_a da cadeia
● replace(item_a, item_b) – substitui todas as ocorrências de item_a por item_b
● find(item_a) – retorna o índice mais a esquerda onde item_a foi encontrado
Todos estes são métodos...
![Page 33: Programação de Computadoresotton/graduacao/programacao/10_str... · Podemos fazer uma lista se “transformar“ numa cadeia de caracteres De quebra no próximo exemplo faremos](https://reader033.vdocuments.mx/reader033/viewer/2022050202/5f55b73582e34e725f7498ce/html5/thumbnails/33.jpg)
Cadeia de caracteres
...
![Page 34: Programação de Computadoresotton/graduacao/programacao/10_str... · Podemos fazer uma lista se “transformar“ numa cadeia de caracteres De quebra no próximo exemplo faremos](https://reader033.vdocuments.mx/reader033/viewer/2022050202/5f55b73582e34e725f7498ce/html5/thumbnails/34.jpg)
Cadeia de caracteres
Mas aqui temos uma questão:
Se uma cadeia de caracteres é um tipo imutável, o que aconteceu quando usamos o replace?
![Page 35: Programação de Computadoresotton/graduacao/programacao/10_str... · Podemos fazer uma lista se “transformar“ numa cadeia de caracteres De quebra no próximo exemplo faremos](https://reader033.vdocuments.mx/reader033/viewer/2022050202/5f55b73582e34e725f7498ce/html5/thumbnails/35.jpg)
Cadeia de caracteres
Mas aqui temos uma questão:
Se uma cadeia de caracteres é um tipo imutável, o que aconteceu quando usamos o replace?
Geramos uma outra cadeia de caracteres, ou seja, alocamos um espaço de memória diferente daquela cadeia original
![Page 36: Programação de Computadoresotton/graduacao/programacao/10_str... · Podemos fazer uma lista se “transformar“ numa cadeia de caracteres De quebra no próximo exemplo faremos](https://reader033.vdocuments.mx/reader033/viewer/2022050202/5f55b73582e34e725f7498ce/html5/thumbnails/36.jpg)
Cadeia de caracteres
Um exercício:
Faça um programa em Python no qual se lê uma frase dada numa única cadeia de caracteres e que gere outra cadeia de caracteres sem os espaços em branco.
![Page 37: Programação de Computadoresotton/graduacao/programacao/10_str... · Podemos fazer uma lista se “transformar“ numa cadeia de caracteres De quebra no próximo exemplo faremos](https://reader033.vdocuments.mx/reader033/viewer/2022050202/5f55b73582e34e725f7498ce/html5/thumbnails/37.jpg)
Cadeia de caracteres
Vamos introduzir mais algumas operações com cadeias de caracteres. Se cad é uma cadeia de caracteres:
● Fatiamento:
cad[n:m] gera uma cadeia do n-ésimo caracter ao m-ésimo caracter
cad[n:m:p] gera uma cadeia do n-ésimo caracter ao m-ésimo caracter deslocando de p em p
● min(cad) – retorna o menor elemento da cadeia
● max(cad) – retorna o maior elemento da cadeia
![Page 38: Programação de Computadoresotton/graduacao/programacao/10_str... · Podemos fazer uma lista se “transformar“ numa cadeia de caracteres De quebra no próximo exemplo faremos](https://reader033.vdocuments.mx/reader033/viewer/2022050202/5f55b73582e34e725f7498ce/html5/thumbnails/38.jpg)
Cadeia de caracteres
...
![Page 39: Programação de Computadoresotton/graduacao/programacao/10_str... · Podemos fazer uma lista se “transformar“ numa cadeia de caracteres De quebra no próximo exemplo faremos](https://reader033.vdocuments.mx/reader033/viewer/2022050202/5f55b73582e34e725f7498ce/html5/thumbnails/39.jpg)
Cadeia de caracteres
Observe que maior e menor aqui estão referidos aos valores da tabela ASCII e que o 'menor' caracter encontrado é o caracter espaço em branco, indicado na tabela ASCII como SP
![Page 40: Programação de Computadoresotton/graduacao/programacao/10_str... · Podemos fazer uma lista se “transformar“ numa cadeia de caracteres De quebra no próximo exemplo faremos](https://reader033.vdocuments.mx/reader033/viewer/2022050202/5f55b73582e34e725f7498ce/html5/thumbnails/40.jpg)
Cadeia de caracteres
Vejamos como examinar uma cadeia de caracteres de várias maneiras, o que será útil para futuros exemplos e exercícios.
Aqui novamente suporemos estar trabalhando com uma cadeia de caracteres de nome cad
● cad.isnumeric() – retorna True se a cadeia é constituída de apenas caracteres numéricos
● cad.isspace() – retorna True se há somente espaços em branco
● cad.isalpha() – retorna True se há somente caracteres do alfabeto
● cad.isalnum() – retorna True se há somente caracteres alfanuméricos
![Page 41: Programação de Computadoresotton/graduacao/programacao/10_str... · Podemos fazer uma lista se “transformar“ numa cadeia de caracteres De quebra no próximo exemplo faremos](https://reader033.vdocuments.mx/reader033/viewer/2022050202/5f55b73582e34e725f7498ce/html5/thumbnails/41.jpg)
Cadeia de caracteres
Observe que tais métodos podem ser, por exemplo, muito úteis em filtragem de dados de entrada
![Page 42: Programação de Computadoresotton/graduacao/programacao/10_str... · Podemos fazer uma lista se “transformar“ numa cadeia de caracteres De quebra no próximo exemplo faremos](https://reader033.vdocuments.mx/reader033/viewer/2022050202/5f55b73582e34e725f7498ce/html5/thumbnails/42.jpg)
Cadeia de caracteres
● Este programa emitirá uma mensagem errada em algumas situações
![Page 43: Programação de Computadoresotton/graduacao/programacao/10_str... · Podemos fazer uma lista se “transformar“ numa cadeia de caracteres De quebra no próximo exemplo faremos](https://reader033.vdocuments.mx/reader033/viewer/2022050202/5f55b73582e34e725f7498ce/html5/thumbnails/43.jpg)
Exercício
Este programa emitirá uma mensagem errada em algumas situações
Descubra quais e corrija
![Page 44: Programação de Computadoresotton/graduacao/programacao/10_str... · Podemos fazer uma lista se “transformar“ numa cadeia de caracteres De quebra no próximo exemplo faremos](https://reader033.vdocuments.mx/reader033/viewer/2022050202/5f55b73582e34e725f7498ce/html5/thumbnails/44.jpg)
Cadeia de caracteres
Repare que encontramos uma maneira pela qual podemos manipular o conteúdo de uma cadeia de caracteres. Basta criar uma nova cadeia ou usar o recurso do
● list()
que cria uma lista a partir do colocado como seu argumento
![Page 45: Programação de Computadoresotton/graduacao/programacao/10_str... · Podemos fazer uma lista se “transformar“ numa cadeia de caracteres De quebra no próximo exemplo faremos](https://reader033.vdocuments.mx/reader033/viewer/2022050202/5f55b73582e34e725f7498ce/html5/thumbnails/45.jpg)
Cadeia de caracteres
![Page 46: Programação de Computadoresotton/graduacao/programacao/10_str... · Podemos fazer uma lista se “transformar“ numa cadeia de caracteres De quebra no próximo exemplo faremos](https://reader033.vdocuments.mx/reader033/viewer/2022050202/5f55b73582e34e725f7498ce/html5/thumbnails/46.jpg)
Cadeia de caracteres
Repare a forma com a qual imprimimos os elementos da lista antes e depois de modificarmos.
Em geral a operação do print() faz com que ao terminar a impressão solicitada, haja um salto para a próxima linha. Este salto é dado pelo uso de um caracter não imprimível.
Aqui substituímos o caracter padrão pelo espaço em branco numa impressão e por nenhum caracter para a outra impressão
![Page 47: Programação de Computadoresotton/graduacao/programacao/10_str... · Podemos fazer uma lista se “transformar“ numa cadeia de caracteres De quebra no próximo exemplo faremos](https://reader033.vdocuments.mx/reader033/viewer/2022050202/5f55b73582e34e725f7498ce/html5/thumbnails/47.jpg)
Cadeia de caracteres
Também usamos uma gambiarra:
usamos o print() sem argumentos para forçar um salto de linha, já que, seja lá o que você pedir para imprimir, o print() saltará para a próxima linha
![Page 48: Programação de Computadoresotton/graduacao/programacao/10_str... · Podemos fazer uma lista se “transformar“ numa cadeia de caracteres De quebra no próximo exemplo faremos](https://reader033.vdocuments.mx/reader033/viewer/2022050202/5f55b73582e34e725f7498ce/html5/thumbnails/48.jpg)
Cadeia de caracteres
Mas esta história de ficar criando cadeia de caracteres fica enchendo a memória do computador.
Para programas como estes do curso, isto não é um grande problema mas, se você estiver trabalhando com uma massa de dados maior, podemos aí ter problemas
● O próprio Python faz o que é chamado Coleta de Lixo mas um programador organizado age diretamente
![Page 49: Programação de Computadoresotton/graduacao/programacao/10_str... · Podemos fazer uma lista se “transformar“ numa cadeia de caracteres De quebra no próximo exemplo faremos](https://reader033.vdocuments.mx/reader033/viewer/2022050202/5f55b73582e34e725f7498ce/html5/thumbnails/49.jpg)
Cadeia de caracteres
Python permite você liberar o espaço de memória ocupado por uma variável de maneira direta usando o
● del()
![Page 50: Programação de Computadoresotton/graduacao/programacao/10_str... · Podemos fazer uma lista se “transformar“ numa cadeia de caracteres De quebra no próximo exemplo faremos](https://reader033.vdocuments.mx/reader033/viewer/2022050202/5f55b73582e34e725f7498ce/html5/thumbnails/50.jpg)
Cadeia de caracteres
![Page 51: Programação de Computadoresotton/graduacao/programacao/10_str... · Podemos fazer uma lista se “transformar“ numa cadeia de caracteres De quebra no próximo exemplo faremos](https://reader033.vdocuments.mx/reader033/viewer/2022050202/5f55b73582e34e725f7498ce/html5/thumbnails/51.jpg)
Exercício
Crie um programa em Python que, dada uma cadeia de caracteres, gere outra cadeia de caracteres na qual não há vogais. Imprima as duas cadeias.
![Page 52: Programação de Computadoresotton/graduacao/programacao/10_str... · Podemos fazer uma lista se “transformar“ numa cadeia de caracteres De quebra no próximo exemplo faremos](https://reader033.vdocuments.mx/reader033/viewer/2022050202/5f55b73582e34e725f7498ce/html5/thumbnails/52.jpg)
Exercício
Faça um programa em Python no qual se lê uma cadeia de caracteres com letras minúsculas e depois ordene as letras em ordem alfabética. Imprima o resultado.