Uma string é uma sequência de caracteres. As strings são basicamente um amontoado de palavras. As palavras podem estar em inglês ou em qualquer língua que seja suportada pelo padrão Unicode, que atende a quase todas as línguas do mundo.
- Nota para programadores experientes
- Não há strings “somente em ASCII” porque o padrão Unicode engloba o ASCII.
- Por convenção, todas as stringas estão em UTF-8.
Aspas Unitárias
Você pode especificar as strings usando aspas unitárias (ou apóstrofes) tais como 'Use aspas unitárias em mim'. Todos os espaços em branco, isto é, espaços e tabulações são preservados no estado em que se encontram.
Aspas Duplas
As strings em aspas duplas trabalham exatamente da mesma maneira que as strings em aspas unitárias. Eis um exemplo: "Qual é o seu nome?"Aspas Triplas
Você pode especificar strings que ocupam várias linhas usando aspas triplas – (“”" ou ”’). Você pode usar aspas unitárias e aspas duplas livremente para formar as aspas triplas. Eis um exemplo: '''Esta é uma string multi-linha. Esta é a primeira linha.
Esta é a segunda linha.
"Qual é o seu nome?", eu perguntei.
Ele disse "Bond, James Bond."
'''
Seqüências de Escape
Suponha que você queira obter uma string que contenha um apóstrofe ('), como você escreverá essa string? Por exemplo, a string é What's your name?. Você não pode escrever 'What's your name?' porque o Python ficará confuso sobre onde a string começa e onde termina. Logo, você terá que especificar que este apóstrofe não indica o fim da string. Isso pode ser feito com a ajuda do que é denominada uma sequência de escape. Você especifica o apóstrofe como \' – note a barra invertida. Agora, você pode escrever a string como 'What\'s your name?'.Uma outra maneira de escrever essa string específica seria "What's your name?", isto é, usando aspas duplas. Da mesma maneira, você pode usar uma sequência de escape para inserir aspas duplas em uma string limitada por aspas duplas. Você também pode inserir a própria barra invertida usando a seqüência de escape \\.
O que fazer se você quer escrever uma string de duas linhas? Uma solução é usar uma string limitada por aspas triplas conforme foi ensinado previamente ou você pode utilizar uma seqüência de escape para o caracter de nova linha – \n para indicar o início da nova linha. Eis um exemplo, Essa é a primeira linha\nEssa é a segunda linha. Uma outra seqüência de escape útil a ser conhecida é a tabulação – \t. Há muitas outras seqüências de escape, mas eu mencionei aqui somente as mais úteis.
É importante observar que numa string, uma única barra invertida no fim da linha indica que a string continua na próxima linha, mas nenhuma linha nova é adicionada. Por exemplo:
"Essa é a primeira frase.\ Essa é a segunda frase."equivale a "Essa é a primeira frase. Essa é a segunda frase.".
Strings Brutas
Se você precisa escrever algumas strings onde nenhum processamento especial tais como as seqüências de escape são manipuladas, então o que você precisa é escrever uma string bruta prefixando um r ou um R à string . Eis um exemplo, r"Novas linhas são indicadas por \n".Strings São Imutáveis
Isso significa que uma vez que você tenha criado uma string, você não pode mudá-la. Embora isso pareça como algo ruim, não é realmente. Nós veremos porque isso não é uma limitação nos diversos programas que nós analisaremos mais adiante.Concatenação de Literais do Tipo String
Se você colocar duas strings literais lado a lado, elas são automaticamente concatenadas pelo Python. Por exemplo, 'Qual é ' 'o seu nome?' é automaticamente convertido em "Qual é o seu nome?".- Nota para programadores C/C++
- Não há tipo de dado char (caracter) separado em Python. Não existe nenhum motivo real para isto e eu tenho certeza que você não esquecerá isto.
- Nota para programadores Perl/PHP
- Lembre-se que strings com aspas simples e duplas são a mesma coisa – elas não diferem entre si
- Nota para Usuários de Expressão Regular
- Sempre use strings brutas quando estiver manipulando expressões regulares. Do contrário, será necessário muito uso de caracteres de escape. Por exemplo, referências a barras invertidas podem ser feitas como '\\1' ou r'\1'.
O método ‘format’
As vezes nós iremos querer construir strings de uma outra informação. Isto é onde o método format() é útil#!/usr/bin/python # Filename: str_format.py age = 25 name = 'Fulano' print('{0} is {1} years old'.format(name, age)) print('Why is {0} playing with that python?'.format(name))
$ python str_format.py Fulano is 25 years old Why is Fulano playing with that python?Como isto funciona:
Uma string pode utilizar certas especificações e sub consequentemente, o método format pode ser chamado de um substituto para estas especificações correspondendo os argumentos ao método format.
Observe que está é a primeira vez que usamos {0} e isto corresponde á váriavel name que é o primeiro argumento ao método ‘format’. Similarmente, a segunda especificação é {1} que corresponde á age que é o segundo argumento ao método ‘format’. O que o Python faz aqui é substituir cada valor do argumento no lugar da especificação
Nenhum comentário:
Postar um comentário