python - strings - ufrpe-si-introd-progufrpe-si-introd-prog. python+-+strings.pdf · livro...

Download PYTHON - Strings - ufrpe-si-introd-progufrpe-si-introd-prog. Python+-+Strings.pdf · Livro “Como…

Post on 05-Jun-2018

214 views

Category:

Documents

1 download

Embed Size (px)

TRANSCRIPT

  • PYTHON - StringsIntroduo Programao

    SI1

  • Contedo

    String

    Conceitos

    Operaes

    Mtodos

    Exemplos

    Exerccios

    2

  • String

    Strings no Python so elementos

    usados para armazenar texto

    A inicializao de strings pode ser comaspas simples ou duplas

    Imutveis

    no possvel adicionar, remover ou mesmo

    modificar parte de uma string

    Para realizar essas operaes necessrio

    criar uma nova string

    3

  • Exemplos

    >>> s = 'Camel'

    Concatenao

    Interpolao

    4

  • Exemplos

    >>> s = 'Camel'

    String como seqncia

    Strings so objetos

    5

  • Exemplos

    >>> s = 'Camel'

    Tamanho de um string

    Pegando caracteres pelas suas posies

    6

  • Exemplos

    >>> s = 'Camel'

    o que acontecer?>>> print 3 * s

    >>> # 3 * s similar a s+s+s

    7

  • Comparao de Strings

    8

    No, ns no temos bananas

    Sua palavra, zebra, vem depois de banana.

  • Fatiando Strings Fatias (slices) de strings podem ser obtidas

    colocando ndices entre colchetes aps a varivel da string

    9

  • ndices

    Comeam em zero Podem ser definidos como trechos ou

    substrings:

    x[inicio:fim+1:intervalo]

    Se no for definido o inicio, serconsiderado como zero

    Se no for definido o fim+1, serconsiderado o tamanho do objeto.

    O intervalo (entre os caracteres), seno for definido, ser 1.

    10

  • ndices

    Exemplos

    11

  • Atribuio

    Strings so imutveis

    12

    #Erro

  • Concatenao

    13

  • Interpolao

    Operador % usado para fazerinterpolao de strings

    Mais eficiente do que a concatenao

    convencional

    14

  • Interpolao

    Smbolos:

    %s: string

    %d: inteiro

    %f: real

    15

  • Mtodo find

    find (substring,inicio,fim)

    Retorna o ndice (posio) da primeira ocorrncia de substring

    inicio e fim so opcionais e indicam os intervalos de ndices onde a busca ser efetuada Os defaults so 0 e o comprimento da string,

    respectivamente

    Caso substring no aparea na string, retornado o valor -1

    Observe que o operador in pode ser usado para dizer se uma substring aparece numa string

    16

  • Exemplo find

    17

    >>> s = "quem parte e reparte, fica com a maior parte"

    >>> s.find("parte")5

    >>> s.find("reparte")13

    >>> s.find("parcela")-1

    >>> "parte" in sTrue

    >>> s.find("parte",6)15

    >>> s.find("parte",6,12)-1

  • Mtodo join

    join(seqncia)

    Retorna uma string com todos os

    elementos da seqncia concatenados

    Os elementos da seqncia tm que ser

    strings

    A string objeto usada como

    separador entre os elementos

    18

  • Exemplos join

    19

  • Mtodos lower e upper

    lower() Retorna a string com todos os caracteres convertidos para minsculos

    upper() Retorna a string com todos os caracteres convertidos para maisculos

    Exemplos:

    20

  • Mtodo replace

    replace(velho,novo,n)

    Substitui as instncias da substring

    velho por novo

    Se n for especificado, apenas n

    instncias so trocadas

    Caso contrrio, todas as instncias

    so trocadas

    21

  • Exemplo replace

    >>> 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'

    22

  • EXERCCIOS

    23

  • Exerccios

    1. Faa um programa que leia 2 strings einforme o contedo delas seguido doseu comprimento. Informe tambm seas duas strings possuem o mesmocomprimento e so iguais ou diferentesno contedo.

    Exemplo:

    24

  • Exerccios

    2. Faa um programa que permita ao usurio digitar o

    seu nome e em seguida mostre o nome do usurio

    de trs para frente utilizando somente letras

    maisculas. Dica: lembrese que ao informar o nome

    o usurio pode digitar letras maisculas ou

    minsculas.

    25

  • Exerccios

    3. Faa um programa que solicite o nome do usurio e imprima-o na vertical.

    Exemplo

    26

  • Exerccios

    4. Modifique o programa anterior de forma a mostrar o nome em formato de escada.

    Exemplo

    27

  • Exerccios

    5. Faa um programa que l uma string e conta quantas

    vezes o substring ado aparece na string.

    28

  • Exerccios

    6. Desenvolva um jogo da forca. Considere que o programa j leu do arquivo uma palavra e est com essa palavra guardada em uma varivel. O jogo deve pedir ao usurio uma letra por vez. O jogador poder errar 6 vezes antes de ser enforcado. Ex:

    Digite uma letra: A

    -> Voc errou pela 1 vez. Tente de novo!

    Digite uma letra: O

    A palavra : _ _ _ _ O

    Digite uma letra: E

    A palavra : _ E _ _ O

    Digite uma letra: S

    -> Voc errou pela 2 vez. Tente de novo!

    29

  • 7. Uma string utilizada para representar uma das fitas

    de uma cadeia de DNA. Para tanto, as bases

    Adenina, Guanina, Citosina, Timina e Uracila so

    representadas pelas letras A, G, C, T e U,

    respectivamente. Deseja-se construir um programa que

    dada uma sequncia de DNA fornecida a sequncia de

    RNA-m equivalente de acordo com a transformao

    indicada na Tabela 1.

    30

  • Bibliografia

    Livro Como pensar como um Cientista de Computao

    usando Python Captulo 7

    http://pensarpython.incubadora.fapesp.br/portal

    Python Tutorial

    http://www.python.org/doc/current/tut/tut.html

    Dive into Python

    http://www.diveintopython.org/

    Python Brasil

    http://www.pythonbrasil.com.br/moin.cgi/DocumentacaoPython#

    head5a7ba2746c5191e7703830e02d0f5328346bcaac

    31

    http://pensarpython.incubadora.fapesp.br/portalhttp://www.python.org/doc/current/tut/tut.htmlhttp://www.diveintopython.org/http://www.pythonbrasil.com.br/moin.cgi/DocumentacaoPython#head5a7ba2746c5191e7703830e02d0f5328346bcaac