Introdução à programação e aos algoritmos

João Araujo Ribeiro · Capítulo 77 de 103

Páginas do PDF

Introdução à programação e aos algoritmos

6.1 Strings

Qual foi a uma das primeiras utilidades do seu computador?

Cálculos, jogos, edição de texto? Independentemente de sua resposta, você deve ter passado informação para o seu computador por meio de um texto. Principalmente se o seu primeiro uso foi para a edição de texto. Escrevendo um e-mail ou editando um trabalho para a escola, você usou caracteres em sequência como entrada de dados.

O tempo todo interagimos com o computador por meio de textos.

Podemos contar palavras, fazer estatísticas de seu uso e descobrir estilos ou até plágio. Quando você digita seu nome na tela de boas-vindas do computador e depois sua senha, algum programa está capturando o que você digita e depois conferindo o texto digitado com um arquivo no qual estão armazenadas as informações que confirmam se você tem ou não acesso àquela máquina.

Para um computador, um texto nada mais é que uma sequência

de caracteres, ou, como é chamado no jargão da área, uma cadeia de caracteres. A forma mais corrente de denominar uma cadeia de caracteres é chamá-la de string. O termo vem do inglês, mas se estabeleceu no Brasil. É mais rápido falar string do que cadeia de caracteres, e por isso prefiro esse termo.

Neste capítulo vamos estudar como trabalhar um texto com um

programa de computador.

 

6.1 STRINGS

O elemento básico de uma string é o caractere. Uma string é uma sequência de caracteres. Cada caractere representa uma letra do alfabeto, um número ou um símbolo. Neste ponto você pode até se esquecer de que na realidade o computador está usando dígitos zeros e uns para representar um caractere. O que importa é a abstração que o caractere representa, não o seu valor numérico.

Se você trabalha com um programa que manipula textos e por

algum motivo está se perguntando qual o valor na tabela ASCII ou UTF-8 deste caractere, pense de novo se essa informação é realmente necessária. Dificilmente você irá precisar conhecer esse valor, a não ser que esteja trabalhando em programas de utilidade muito específica.

A forma de representar uma string em um programa já usamos muitas vezes: usamos dois caracteres de ‘aspas simples’ ou de “aspas duplas” para delimitar a string. Tudo o que estiver entre esses símbolos constituirá uma string. A regra básica é que se você começou com aspas simples deve terminar com aspas simples, o mesmo valendo para as aspas duplas.

A maior parte dos programadores prefere usar aspas simples, mas isso não é obrigatório. O funcionamento da string é o mesmo, com aspas simples ou duplas. Assim, as duas formas seguintes de representar uma string são equivalentes:

print (‘Celacanto Provoca Maremoto’) print (“Celacanto Provoca Maremoto”)

Uma vez você tenha começado uma string com um caractere de aspas simples, por exemplo, o outro, as aspas duplas, será interpretado como um caractere normal, permitindo que seja incluído com facilidade na string:

ordem1 = ‘“Romanes eunt domus”?’

ordem2 = “‘Romani ite domum’”

print (ordem1)

print (ordem2)

 

■ Programa 6.1: Uso de caracteres delimitadores de string.

 

O Programa 6.1 vai imprimir na tela:

“Romanes eunt domus”?

‘Romani ite domum’

Existem situações em que você quer que uma string continue em outra linha ou quer inserir uma tabulação. Para tanto, uma string também pode receber caracteres de controle. Esses caracteres são conhecidos como “sequências de escape”. Um caractere de escape é um caractere que modifica o comportamento do caractere seguinte. Em Python, o caractere de escape é a contrabarra (\). Algumas sequências de escape são:

 

Tabela 6.1 Algumas sequências de escape

 

\\ imprime a contrabarra. \

 

\n insere uma quebra de linha

 

\t insere tabulação horizontal

 

\’ insere aspas simples ‘

 

\” insere aspas duplas “

 

Por exemplo, o Programa 6.2 utiliza alguns caracteres de escape

para imprimir uma string. A contrabarra (\) isolada ao fim da linha serve para indicar que a string continua na linha seguinte.

frase = ‘Celacanto\nProvoca\nMaremoto’

frase_longa = ‘Certo:\t”Romani ite domum” \

Errado: “Romanes eunt domus”’

print (frase)

print (frase_longa)

 

■ Programa 6.2: Uso de sequências de escape.

 

O Programa 6.2 irá imprimir na tela:

Celacanto

Provoca

Maremoto

Certo: “Romani ite domum” Errado: “Romanes eunt do mus”

Você também pode usar aspas triplas para escrever uma string com várias linhas.

ordem = ‘‘‘‘“Romanes eunt domus”?

“Romani ite domum”’’’

print (ordem)

 

■ Programa 6.3: Uso de aspas triplas.

 

Uma string, como todo dado, ocupa um espaço na memória. Os caracteres constituintes da string devem estar em uma região contígua. Cada um desses caracteres pode ser acessado individualmente. Como em uma lista, Python usa um índice para ter acesso a cada caractere. O primeiro índice é 0, como sempre.

De fato, muito do que foi apresentado sobre listas também vale para as strings. Veja como percorrer cada letra de uma string no Programa 6.4.

frase = ‘Celacanto’

for letra in frase:

print(letra)

 

■ Programa 6.4: Percorrendo uma string.

 

Esse programa imprime cada letra de frase em uma linha diferente:

C

e

l

a

c

a