Ver Feed RSS

root@blog:/# chmod o+r *

[Curso de Python] Slicing em strings

Avalie este Post de Blog

Antes de prosseguir leia os artigos anteriores aqui



Pessoal, desculpa ter sumido, mas por motivos de saúde tive que me ausentar por uns dias e por consequência o post de hoje será curto! Estamos atrasados no conteúdo, então vamos acelerar!!

Slicing em strings



Como explicado anteriormente, slicing é um processo que pode ser realizado em qualquer tipo iteravel em python e uma string não é uma excessão.

O conceito do slicing continua o mesmo, por exemplo a string "Index" é interpretada da seguinte forma:


Vamos ver algumas linhas de código:
Código :
>>> s = "teste de string"
>>> print s[0]
t
>>> print s[:5]
teste
>>> print s[6:8]
de
>>> print s[9:]
string
>>> s = "123456789"
>>> print s[::-1]
987654321
>>> print s[::2]
13579
>>>
Como podemos ver é exatamente igual ao explicado anteriormente. Alguém tem alguma dúvida como isso funciona?? Se tiver, posta nos comentário, ok?!



Limitações das strings


As strings, como dito diversas vezes, são imutáveis, ou seja, não podem ser alteradas. Vamos provar isso:

Código :
>>> s = "teste de string"
>>> print s
>>> print s[9:]
string
>>> s[9:] = "slicing"
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: 'str' object does not support item assignment
>>>
>>> print s[:9]
teste de
>>> s2 = s[:9] + "slicing"
>>> print s
teste de string
>>> print s2
teste de slicing
>>>
Como podemos ver, eu não pude sobrescrever a palavra "string", eu tive que criar uma nova string usando parte da primeira (s[:9] que corresponde a "teste de ") e adicionar o novo final ("slicing") para obter a nova string ("teste de slicing").

Atualizado 01-09-2010 em 08:09 por Magnun

Categorias
Python , Artigos , Artigos , Cursos , Curso de Python

Comentários

Página 1 de 3 123 ÚltimoÚltimo
  1. Avatar de ilsahec
    esse é um recurso muito bom do python.
  2. Avatar de kakinho
    eu ia postando uma duvida, mas quando fui postando, me veio a solução...
    Era somente referente ao [::]
    Mas ja intendi, ou ao menos acho que intendi...

    Otima aula novamente!
  3. Avatar de Magnun
    Pode postar as dúvidas! Não se esqueça que sua dúvida pode ser a dúvida de outros...
  4. Avatar de fabraga
    Já tem um ano e meio que foram escritas essas aulas. Estou curtindo muito e seguindo adiante, mas não teria nada mais atual para o Python a partir da versão 3.0? Instalei a 3.2 mas dá pra sacar as pequenas diferenças como a do comando print 'blablabla' que dá mensagem de erro porque ter que ser usado como função: print('blablabla'). Just curious! ^^
  5. Avatar de Claudiodf
    Existe Slicing com números???
Página 1 de 3 123 ÚltimoÚltimo

+ Enviar Comentário



Visite: BR-Linux ·  VivaOLinux ·  Dicas-L