Strings functions en Python

Esta publicación no tendrá mucho valor para quienes saben de Python o se dedican al desarrollo en este lenguaje. Para quienes no se encuentren en este grupo, quizás se sorprendan tanto como yo con la simplicidad con que Python maneja las cadenas de texto.

A continuación, veremos algunos métodos del objeto string en Python a través de ejemplos muy sencillos. Cualquiera de estos ejemplos los puedes probar desde un shell interactivo de Python y si no tienes instalado el interprete Python en tu sistema, no es excusa, pues puedes usar codepad, el interprete online.

>>> s=”Hola Mundo”

Extracción de subcadenas: las cadenas en Python son almacenadas en un array, así por ejemplo s[0]=”M”. Los índices del array se pueden especificar como un par separado por dos puntos, esto retornará una subcadena desde el primer índice al último. También pueden omitirse uno de los índices, si se omite el primero indica el inicio de la cadena y la omisión del último indica el fin de la cadena. También pueden especificarse índices negativos, donde -1 es el último caracter.

>>> print s[2]
l
>>> print s[5:10]
Mundo
>>> print s[:4]
Hola
>>> print s[8:]
do
>>> print s[-5:-2]
Mun

int len(string): retorna la longitud de una cadena.

int count(sub [,start[,end]]): retorna el número de ocurrencias de una cadena dentro de otra, por ejemplo:

>>> print s.count(“Hola”)
1
>>> print s.count(“o”)
2

boolean endswidth(sub [,start[,end]]): retorna verdadero o falso si una cadena termina con la cadena especificada.

>>> print s.endswith(“do”)
True
>>> print s.endswith(“d”)
False

boolean startswidth(sub [,start[,end]]): similar a endswidth.

>>> print s.startswith(“Hola”)
True
>>> print s.startswith(“Mundo”)
False

int find(sub [,start[,end]]): retorna la posición numérica de la primera ocurrencia de una cadena dentro de otra.

>>> print s.find(“o”)
1

int rfind(sub [,start[,end]]): similar a find, pero en vez de retornar la posición de la primera ocurrencia, lo hace de la última.

>>> print s.rfind(“o”)
9

string lower(): retorna la cadena original en letras minúsculas.

>> print s.lower()
hola mundo

string upper(): retorna la cadena original en letras mayúsculas.

>>> print s.upper()
HOLA MUNDO

string replace(old, new [,count]): reemplaza todas o un número dado de ocurrencias de una cadena dentro de otra.

>>> print s.replace(“o”,”O”)
HOla MundO
>>> print s.replace(“o”,”O”,1)
HOla Mundo

string strip([chars]): retorna una cadena eliminando al inicio y el fin de la misma un caracter dado. Si no se indica caracter utiliza como predeterminado el espacio en blanco.

>>> print s.strip()
Hola Mundo
>>> print s.strip(“H”)
ola Mundo
>>> print s.strip(“o”)
Hola Mund

array split([sep [,maxsplit]]): divide una cadena en un array de cadenas dado un separador. Si no se indica separador utiliza como predeterminado el espacio en blanco. Opcionalmente, se puede especificar el número máximo de divisiones.

>>> a = [‘abc’,’def’,’ghi’]
>>> t = “|”
>>> print t.join(a)
abc|def|ghi

string join(array): combina los elementos de un array de cadenas con otra cadena.

>>> s.split()
[‘Hola’, ‘Mundo’]
>>> s.split(“o”)
[‘H’, ‘la Mund’, ”]

Vía: Python Basics

Tags: ,


  • Pau

    Muchas gracias por la recopilación. Normalmente busco el string “python string functions” en Google … hoy he dado con este post de tu blog y lo he guardado en mi delicious, pues ya no va a hacer falta que lo busque más.

    Saludos 😉

    Reply

  • yasix andrade

    CADENAS EN PYTHON LINEA POR LINEA FUNCIONA LO PROGRAMA YOP

    cadena = raw_input(’Escribe una frase: ’)
    2 while cadena != ’’:
    3 cambios = 0
    4 anterior = ’ ’
    5 for caracter in cadena:
    6 if caracter == ’ ’ and anterior != ’ ’:
    7 cambios += 1
    8 anterior = caracter
    9
    10 if cadena[-1] == ’ ’:
    11 cambios = cambios – 1
    12
    13 palabras = cambios + 1
    14 print ’Palabras:’, palabras
    15
    16 cadena = raw_input(’Escribe una frase: ’)

    RESULTADO

    Escribe una frase: una dos tres
    Palabras: 3
    Escribe una frase: mi ejemplo
    Palabras: 2
    Escribe una frase: ejemplo
    Palabras: 1
    Escribe una frase: otro ejemplo
    Palabras: 2
    Escribe una frase: ejemplo
    Palabras: 1
    Escribe una frase: ejemplo
    Palabras: 1

    Reply

  • andres

    muy buen codigo yasix me sirvio de muchooooooooo

    Reply

  • carla

    en mi terminal no corre bien asi que no es muy bueno..

    Reply

  • ana

    Que taL!!

    muy buen articulo, me sirvio mucho la explicacion, una pregunta, saben como de un texto, hacer cortes de frases para que tengan solo 3 palabras??? y como las almacenaria,
    gracias!

    Reply

  • Gabriel

    Hola:

    muy buena la información y los ejemplos…
    tengo una pregunta: cual es el editor que usas en la imagen del post?

    gracias de antemano…

    Reply

  • gersonfx

    me gustaria saber que editor es ese de la imagen

    Reply

  • p4nd4

    cual es el ide que estas usando en es imagen?
    podrias decirmelo? gracias

    Reply

  • Javier

    El Editor que se ve en el ejemplo con el combobox con todas las funciones que se pueden aplicar a la cadena es el shell de Python, se utiliza de la siguiente forma nombre de la variable de cadena mas un punto y se presiona la tecla direccional arriba y con eso se despliega la lista

    Reply

  • Nahuel

    solo un detalle:
    boolean endswidth(sub [,start[,end]]), // le sobra la “d” en width.

    Excelente post

    Reply

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.