Docsity
Docsity

Prepare-se para as provas
Prepare-se para as provas

Estude fácil! Tem muito documento disponível na Docsity


Ganhe pontos para baixar
Ganhe pontos para baixar

Ganhe pontos ajudando outros esrudantes ou compre um plano Premium


Guias e Dicas
Guias e Dicas


Python 04 Strings, Slides de Engenharia de Materiais

Série de slides ensinando a sintaxe da linguagem computacional Python. Por Paulo Esperança, adaptado por Rodrigo Toledo.

Tipologia: Slides

2011

Compartilhado em 23/09/2011

rafael-pinto-24
rafael-pinto-24 🇧🇷

4.3

(6)

8 documentos

1 / 25

Toggle sidebar

Esta página não é visível na pré-visualização

Não perca as partes importantes!

bg1
Python:
strings
Rodrigo de Toledo
(adaptação do original do prof. Claudio Esperança)
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19

Pré-visualização parcial do texto

Baixe Python 04 Strings e outras Slides em PDF para Engenharia de Materiais, somente na Docsity!

Python:

strings

Rodrigo de Toledo

(adaptação do original do prof. Claudio Esperança)

Strings

  • (^) São cadeias de caracteres
  • (^) Constituem outro tipo fundamental do python
  • (^) Constantes string são escritas usando aspas simples ou

duplas

  • (^) Ex.: "string" ou 'string'
  • (^) O operador “+” pode ser usado para concatenar strings
  • (^) Ex.: "a"+"b" é o mesmo que "ab"
  • (^) O operador * pode ser usado para repetir strings
  • (^) Ex.: "a"*10 é o mesmo que "aaaaaaaaaa"

raw_input

• É semelhante ao input, mas não tenta

interpretar o que foi digitado como uma

expressão

  • (^) O resultado é simplesmente uma string com o texto

digitado

  • (^) Ex.:

    nome = raw_input("Entre com o seu nome: ") Entre com o seu nome: Rodrigo de Toledo nome 'Rodrigo de Toledo‘

• Ou seja, use o RAW_INPUT para ler strings

(uma observação sobre o print)

• Se o comando terminar com vírgula, o próximo

print escreverá na mesma linha.

• Por exemplo:

>>> a, b = 0, 1

>>> while b < 1000:

... print b,

... a, b = b, a+b

Strings – Índices

  • (^) Endereçam caracteres individuais de uma string
    • (^) Notação: string [ índice ]
    • (^) O primeiro caractere tem índice 0
    • (^) O último caractere tem índice -
    • (^) Ex.:

      frase = “Esta eh uma frase!" frase[0] 'E' frase[-1] '!' frase[4] ' '

Percorrendo os caracteres de uma string

  • (^) Para saber o tamanho de uma string, usa-se o comando

len()

  • (^) Para percorrer, podemos usar o while (fica mais fácil

usar o comando for, como veremos mais tarde)

  • (^) Exemplo:

O que faz o programa abaixo?

letra = raw_input("Entre com uma letra: ") frase = raw_input("Entre com uma frase: ") cont = 0 i= while i<len(frase): if frase[i] == letra: cont+= i+= print cont

ASCII

  • (^) Python usa a tabela de caracteres default do S.O.
    • (^) Ex.: ASCII, UTF-
  • (^) Tabela descrevendo os 256 caracteres representáveis, de 0 a 255.
    • (^) (1caracter = 1byte = 8 bits = 256).
  • (^) Nela estão contidos:
    • (^) Letras (maiúsculas ou minúsculas),
    • (^) Algarismos,
    • (^) Símbolos e
    • (^) Caracteres especiais (enter, backspace, tabulação…)
  • (^) Informações úteis sobre a tabela ASCII:
    • (^) As letras minúsculas estão consecutivas em ordem alfabética.
    • (^) As letras maiúsculas estão consecutivas em ordem alfabética.
    • (^) Os algarismos estão consecutivos em ordem crescente.

caracteres especiais

  • (^) Caracteres não imprimíveis podem ser expressos usando notação “barra-invertida” () - (^) \n é o mesmo que new line - (^) \t é o mesmo que tab - (^) \r é o mesmo que carriage return - (^) \b é o mesmo que backspace - (^) \ é o mesmo que __ - (^) \x41 caracter cujo código hexadecimal é 41 (“A” maiúsculo) >>> print "hello\nworld" hello world >>> print "hello\tworld" hello world >>> print "hello\bworld" helloworld >>> print "hello\rworld" helloworld >>> print "hello\world" hello\world >>> print "hello\x41world" helloAworld Não consegui que funcionassem no Shell do Python 2.7 (windows)

Strings

• A notação barra-invertida () pode ser

desabilitada desde que a constante string

seja precedida por um r (erre minúsculo)

– São chamadas strings raw (cruas)

– Ex.:

>>> print "abc\ncd\tef"

abc

cd ef

>>> print r"abc\ncd\tef"

abc\ncd\tef

Strings

• Constantes string podem ser escritas com várias

linhas desde que as aspas não sejam fechadas e

que cada linha termine com uma barra invertida

• Ex.:

print "abcd\n\

... efgh\n
... ijk" abcd efgh ijk

print "abcd
... efgh
... ijk" abcdefghijk

Exemplo

frase = raw_input("Entre com uma frase: ") minu, maiu, alga = 0,0, i= while i<len(frase): if "a" <= frase[i] <= "z": minu+= elif "A" <= frase[i] <= "Z": maiu+= elif "0" <= frase[i] <= "9": alga+= i+= print "Minusculas:", minu print "Maiusculas:", maiu print "Algarismos:", alga Leia uma string e conte o total de letras minúsculas, letras maiúsculas e algarismos.

Exercícios

  1. Leia uma string e retorne o número de palavras encontradas: a) Considere que serão entradas apenas letras e sempre um único espaço entre palavras b) Considere os caracteres ‘. ’, ‘ , ’, ‘ ; ’ como separadores de palavras, além do espaço em branco. c) Considere que cada palavra pode estar separada por um ou mais caracteres de espaço.
  2. Faça um programa que leia uma string e verifique se é um palíndrome, isto é, da esquerda para direita ou da direita para a esquerda têm-se a mesma seqüência de caracteres. Exemplos: ama, ovo, asa, erre, arara.
  3. DESAFIO:
    • (^) Altere o programa anterior para que funcione considerando apenas as letras. Por exemplo, a frase “socorram-me, subi no onibus em marrocos” deve ser considerado uma palíndrome.

Strings – Fatias (slices)

a = 'abcde' a[0:2] 'ab' a [2:] 'cde' a[:] 'abcde' a[-1:] 'e' a[:-1] 'abcd' a [3:1] '' a [-1:-3] ''

Exemplo