Expressões e strings 3
Expressões e strings 4
strings
Uma string é um tipo do python para reter somente text porém também non printable ou dado binario. Se você tem feito muito trabalho com strings em linguagens como C ou C++, prepare para ter uma surpresa e nunca mais se preocupar com gerenciamento de memoria e também um monte de bugs. Strings são parte do core da linguagem isto é, você não precisa usar metodos externos a outras bibliotecas pra ter uma melhor administração eles já estão la built-in.
Strings literais
A literal string é uma sequencia de caracteres entre um par de quotes seja dupla ou unicos.
>>> "What is the life's sense, mr ?"
"What is the life's sense, mr ?"
>>> 'When you find that you are gonna lose it'
'When you find that you are gonna lose it'
>>>
Quais dos dois usar ? é apenas uma questão de gosto embora se você quiser expressar " dentro de strings você poderia usar '"' e se você quisesse expressar ' dentro de strings você poderia usar "'" tão bem quanto scapes como '\"' etc.
Vocẽ pode quebrar strings em outras linhas de modo que o interpretador entenda tal como.
>>> 'ola este é um exemplo interessante \
... está vendo agora ? \
... hehe'
'ola este \xc3\xa9 um exemplo interessante est\xc3\xa1 vendo agora ? hehe'
>>>
Se sua string de texto tem muitas linhas e você quer que o python retenha o mesmo formato que você você usou quando digtando ela você pode usar """ text """ ou ''' text '''
>>> """ Ola
... Mundo
... Este é um exemplo
... Interessante
... legal.
... """
' Ola\n\tMundo\n\tEste \xc3\xa9 um exemplo\n\t\tInteressante\n\tlegal.\n'
>>> ''' Este é outro
... exemplo
... que pode
... ajudar
... '''
' Este \xc3\xa9 outro\n\texemplo\n\t\tque pode\n\tajudar\n'
>>>
Comprimento de string
Independente da maneira de como você introduz uma string no python , strings literais podem ser de qualquer tamanho. Você pode usar len(x) para determinar o comprimento delas.
>>> len("""Interessante exemplo
... você não acha ?""")
40
>>> len('abcd')
4
>>> len("hehe")
4
>>> len(''' Sim, você
... acha
... ''')
22
>>> alpha = '12312312'
>>> len(alpha)
8
>>> n = 2 ** 10212
>>> data = str(n)
>>> len(data)
3075
>>>
Sequencia de scape
Você pode também escapar algumas sequencias e inclui-las entre quotes ou double quotes usando as strings da tabela abaixo.
>>> print "\"hehe"
"hehe
>>> print '\'hehe\''
'hehe'
>>>
Escape Sequences
Sequence Description
Newline (ASCII LF)
\n
Single quote
\’
Double quote
\”
Backslash
\\
Tab (ASCII TAB)
\t
Backspace (ASCII BS)
\b
Carriage return (ASCII CR)
\r
Character with ASCII value hh in hex
\xhh
Character with ASCII value ooo in octal
\ooo
Form feed (ASCII FF)*
\f
Bell (ASCII BEL)
\a
Vertical tab (ASCII VT)
\v
A tabela lista as sequencias de escapamento que são validas. Se você tentar usar
sequencias de escape invalidas python vai deixa ambas a barra ou backlash e o caracter depois disto.
>>> print 'hhee \kk ysudy'
hhee \kk ysudy
>>>
Raw strings
Uma maneira de especificar strings literais é com o raw strings no qual os backslashes podem ser ainda usado para escapar caracteres porém o python vai deixa-los na string. Você pode especificiar uma string como raw com o r prefix. Por exemplo, se você estiver em um sistema windows o separador de caminho para um diretorio é um backslash assim para usar isto em uma string você normalmente terá de digitatr '\\'( isto é, a sequencia de escape para o backslash), Alternativamamente você poderia fazer
>>> s = r'c:\alpha\beta\gama.txt'
>>> print s
c:\alpha\beta\gama.txt
>>>
0 comentários:
Postar um comentário
Faça o seu comentário e nos siga no Twitter