Danelia Sanchez Sanchez
Dunder methods: También conocidos como métodos mágicos (magic métodos) o special methods (métodos especiales).
Rhonal Velasco
Buen aporte
Roberto Sobarzo
Gracias!!
Aprende a dominar los métodos de strings en Python, entender por qué las letras mayúsculas y minúsculas son distintas, y aprovechar funciones clave como dir y help para explorar objetos y su documentación. Con ejemplos claros en el intérprete, verás cómo buscar patrones, transformar texto y escribir docstrings útiles.
¿Qué operaciones con strings en Python necesitas hoy?
Los strings ofrecen métodos descriptivos y muy prácticos. Además, Python trata cada carácter como un número interno distinto, por eso 'a' y 'A' no son iguales, lo que afecta búsquedas y comparaciones sensibles a mayúsculas.
¿Cómo transformar, buscar y validar patrones?
Ejemplo en el intérprete:
s = "Platzi" s.upper() # 'PLATZI' s.lower() # 'platzi' s.capitalize() # 'Platzi' s.find("la") # 1 (porque 'la' inicia en el índice 1) s.startswith("P") # True s.endswith("zi") # True
¿Qué hacen los operadores in y not in?
Ejemplo breve:
"la" in "Platzi" # True "x" not in "Platzi" # True
¿Cómo explorar métodos con dir y qué son los Dunder Methods?
Para conocer “todo lo que un objeto sabe hacer”, usa dir. Verás métodos comunes y otros con doble guion bajo al inicio y final: los Dunder Methods. Estos configuran el comportamiento del objeto con el propio lenguaje (por ejemplo, cómo actúa el operador +).
¿Por qué aparecen nombres con doble guion bajo?
Ejemplo de exploración:
s = "Platzi" dir(s) # Lista de métodos y atributos, incluidos __add__, __len__, etc.
¿Qué métodos usar en el día a día?
¿Cómo documentar y consultar con docstrings y help?
La documentación integrada facilita el aprendizaje. Agrega docstrings con triples comillas dobles a tus funciones y consúltalas con help. Casi todas las funciones y librerías en Python incluyen estos textos de ayuda.
¿Cómo escribir una docstring efectiva?
Ejemplo:
def my_function(): """ Este es un texto de ayuda de cómo utilizar esta función. """ pass
¿Cómo obtener ayuda desde el intérprete?
help(my_function) # Muestra la docstring y detalles de la función help(str) # Explora documentación de la clase str y sus métodos
¿Con qué métodos y combinaciones lograste mejores resultados al manipular strings? Comparte tus hallazgos y dudas en los comentarios.
Danelia Sanchez Sanchez
Dunder methods: También conocidos como métodos mágicos (magic métodos) o special methods (métodos especiales).
Rhonal Velasco
Buen aporte
Roberto Sobarzo
Gracias!!
MÉTODOS DE CADENAS
METODO CENTRAR La funcion retorna una 'cadena' con rellenado con una cantidad especifica de caractéres
POR EJEMPLO
nombre='Alexander' nombre.center(20,'*')
output = *****alexander******
METODO COUNT El metodo count() devuelve el numero de coincidencias de una subcadena que contiene la cadena POR EJEMPLO:
nombre = 'alexander' nombre.count('a') => 2 nombre.count('a',1,-1) => 1
MÉTODO CAPITALIZE Devuelve una copia de la cadena con el primer caracter en mayuscula. POR EJEMPLO :
nombre="alexANder" nombre.capitalize() => "Alexander"
MÉTODO ENDSWITH Devuelve verdadero si la cadena finaliza en el sufijo especificado,en caso contrario falso. POR EJEMPLO:
nombre='Alexander' nombre.endswith('DER') => false nombre.endswith('der') => true
MÉTODO FIND Devuelve el menor índice de la cadena para que el sub se encuentre, también recibe 2 argumentos opcionales de inicio y fin. Nos devuelve -1 si no se halla el substring. POR EJEMPLO
nombre = 'Alexander' nombre.find('exa') => 2 nombre.find('exa',5) => -1
MÉTODO ISALNUM devuelve verdadero si todos los caracteres son alfanuméricos y hay al menos un caracter. POR EJEMPLO:
nombre = "Alexander" nombre.isalnum() => true prueba = "" prueba.isalnum() => false test ="alexander@@@" test.isalnum() => false
- MÉTODO ISALPHA() devuelve verdadero si todos los caracteres son alfabéticos. POR EJEMPLO: ``` nombre="alexander" nombre.isalpha() =>true nombre="alexander745" nombre.isalpha() =>false ``` - MÉTODO ISDIGIT devuelve verdadero si todos los caracteres son dígitos. por ejemplo: ``` codigo="4785" codigo.isdigit() => true ```
David Behar
Lista completa de operadores de Strings
Ver artículo original *
| Method | Description |
|---|---|
| capitalize() | Convierte el primer carácter en mayúsculas |
| casefold() | Convierte una cadena en minúsculas |
| center() | Devuelve una cadena centrada |
| count() | Devuelve el número de veces que un valor especificado se produce en una cadena |
| encode() | Devuelve una versión codificada de la cadena |
| endswith() | Devuelve true si los extremos de cadena con el valor especificado |
| expandtabs() | Establece el tamaño de la pestaña de la cadena |
| find() | Busca la cadena de un valor especificado y devuelve la posición de donde fue encontrado |
| format() | Formatos especifican los valores de una serie |
| format_map() | Formatos especifican los valores de una serie |
| index() | Busca la cadena de un valor especificado y devuelve la posición de donde fue encontrado |
| isalnum() | Devuelve verdadero si todos los caracteres de la cadena son alfanuméricos |
| isalpha() | Devuelve True si todos los caracteres de la cadena están en el alfabeto |
| isdecimal() | Devuelve True si todos los caracteres de la cadena son decimales |
| isdigit() | Devuelve verdadero si todos los caracteres de la cadena son dígitos |
| isidentifier() | Devuelve True si la cadena es un identificador |
| islower() | Devuelve verdadero si todos los caracteres de la cadena son minúsculas |
| isnumeric() | Devuelve verdadero si todos los caracteres de la cadena son numéricos |
| isprintable() | Devuelve verdadero si todos los caracteres de la cadena son imprimibles |
| isspace() | Devuelve True si todos los caracteres de la cadena son espacios en blanco |
| istitle() | Devuelve True si la cadena sigue las reglas de un título |
| isupper() | Devuelve True si todos los caracteres de la cadena son mayúsculas |
| join() | Se une a los elementos de un iterable al final de la cadena |
| ljust() | Devuelve una versión justificada izquierda de la cadena |
| lower() | Convierte una cadena en minúsculas |
| lstrip() | Devuelve una versión de ajuste izquierdo de la cuerda |
| maketrans() | Devuelve una tabla de traducción para ser utilizado en traducciones |
| partition() | Devuelve una tupla donde la cadena se separó en tres partes |
| replace() | Devuelve una serie en un valor especificado es reemplazado con un valor especificado |
| rfind() | Busca la cadena de un valor especificado y devuelve la última posición de donde fue encontrado |
| rindex() | Busca la cadena de un valor especificado y devuelve la última posición de donde fue encontrado |
| rjust() | Devuelve una versión justificada derecha de la cadena |
| rpartition() | Devuelve una tupla donde la cadena se separó en tres partes |
| rsplit() | Divide la cadena en el separador especificado y devuelve una lista |
| rstrip() | Devuelve una versión ajuste correcto de la cadena |
| split() | Divide la cadena en el separador especificado y devuelve una lista |
| splitlines() | Divide la cadena en los saltos de línea y devuelve una lista |
| startswith() | Devuelve true si la cadena comienza con el valor especificado |
| strip() | Devuelve una versión recortada de la cadena |
| swapcase() | Permutas de los casos, se convierte en minúsculas mayúsculas y viceversa |
| title() | Convierte el primer carácter de cada palabra en mayúsculas |
| translate() | Devuelve una cadena traducida |
| upper() | Convierte una cadena en mayúsculas |
| zfill() | Rellena la cadena con un número determinado de valores de 0 a principios |
Yorlys Oropeza
Excelente aporte :thumbsup:
JUAN PABLO MAYORGA MENDIETA
Elton Sedano Ticllasuca
buen aporte pablo
Royer Guerrero Pinilla
title() sirve para los nombres, ejemplo: peter pan -> Peter Pan Convierte la primera letra de cada palabra a mayúsculas
Rhonal Velasco
Un truco para limpiar su consola o el interprete de Python. Pulsen CTRL + L. Funciona en linux y MacOs, no se si en Windows tambien
Néstor Iván Cepeda Munevar
Cuauhtémoc Salvador Bautista Enciso
Escribiendo “cls” se limpia en windows
Néstor Iván Cepeda Munevar
Para los que les gustaria saber que es "pass"
Aquí pueden ver un ejemplo.
Carmen Sánchez Salgado
Gracias por el aporte.
En resumen:
The pass statement is a null operation; nothing happens when it executes.
Perla Godinez Castillo
gracias
Aufsten Aufsten
Roberto Arturo
¿Cual sería la diferencia entre usar las comillas triples y el numeral (#) para colocar anotaciones? Supongo que el numeral no responde al comando help.
Juan Jacobo Arias Ramirez
A la hora de hacer comentarios el ++#++ solo deja comentar una linea, por lo que si son varias líneas cada una necesita el ++#++ al inicio
Pero si comentar con triple comilla doble estas abarcar todas la líneas que quieras hasta que se cierren
#solo sirve #para una linea """ sirve para muchas lineas """
Raúl Bravo García
En Windows para salir del operador ‘help’, y volver a la consola tenemos que pulsar ‘q’.
Rhonal Velasco
No solo en Windows, funciona igual en LInux y MacOS
Wilson Alvaro Leonardo Tahuico
Estos son metodos de formato en Python:.
Convertir a mayúscula la primera letra
Método: capitalize()
Retorna:
una copia de la cadena con la primera letra en mayúsculas.
cadena = "bienvenido a mi aplicación"
print cadena.capitalize()
Bienvenido a mi aplicación
Convertir una cadena a minúsculas
Método: lower()
Retorna: una copia de la cadena en minúsculas.
cadena = "Hola Mundo"
print cadena.lower()
hola mundo
Convertir una cadena a mayúsculas
Método: upper()
Retorna: una copia de la cadena en mayúsculas.
cadena = "Hola Mundo"
print cadena.upper()
HOLA MUNDO
Convertir mayúsculas a minúsculas y viceversa
Método: swapcase()
Retorna: una copia de la cadena convertidas las mayúsculas en minúsculas y viceversa.
cadena = "Hola Mundo"
print cadena.swapcase()
hOLA mUNDO
Convertir una cadena en Formato Título
Método: title()
Retorna: una copia de la cadena convertida.
cadena = "hola mundo"
print cadena.title()
Hola Mundo
Centrar un texto
Método: center(longitud[, “caracter de relleno”])
Retorna: una copia de la cadena centrada.
cadena = “bienvenido a mi aplicación”.capitalize()
print cadena.center(50, “=”)
=Bienvenido a mi aplicación==
print cadena.center(50, " ")
Bienvenido a mi aplicación
Alinear texto a la izquierda
Método: ljust(longitud[, “caracter de relleno”])
Retorna: una copia de la cadena alineada a la izquierda.
cadena = “bienvenido a mi aplicación”.capitalize()
print cadena.ljust(50, “=”)
Bienvenido a mi aplicación=======================
Alinear texto a la derecha
Método: rjust(longitud[, “caracter de relleno”])
Retorna: una copia de la cadena alineada a la derecha.
cadena = “bienvenido a mi aplicación”.capitalize()
print cadena.rjust(50, “=”)
=======================Bienvenido a mi aplicación
print cadena.rjust(50, " ")
Bienvenido a mi aplicación
Rellenar un texto anteponiendo ceros
Método: zfill(longitud)
Retorna: una copia de la cadena rellena con ceros a la izquierda hasta alcanzar la longitud final indicada.
numero_factura = 1575
print str(numero_factura).zfill(12)
000000001575
Elvis Ojeda Melo
Funcion split() en python vs rsplit()
Yordy Anyerson Andrade Rodriguez
Estuve interactuando con los diferentes metodos de la lista y me gusto los resultados de muchas de ellas aunque en algunas me sale error.
Omar Daniel Centeno
¿Cuáles te gustaron más? ¿En cuáles te sale error?
Luis Fernando Úbeda Camacho
help(): Accedemos a los docstrings que nos explica que hace la función.
Danilsa Garcia de Balbuena
La palabra más larga en español es "Anticonstitucionalmente" La palabra más larga en inglés es: "pneumonoultramicroscopicsilicovolcanoconiosis"
Juan Carlos Espinoza Flores
Con la clase he querido probar el avance y decidi hacer una funcion que separe el nombre teniendo en cuenta los espacios, y los concatene con punto y coma, en código puro:
[4, 11, 20, 27]
[0, 5, 12, 21] =[0,4+1,11+1,20+1]
Claro esta, no quiero reinventar la rueda, hay otras formas más sencillas que ya vienen con python, pero he querido entender el funcionamiento interno y hacerlo por mi cuenta para practicar, les dejo también las otras opciones.
#Second way fname_space = fname.split() print(f'{fname_space}') print(f'{";".join(fname_space)}') #third way print(fname.replace(' ',';'))
Jose Antonio Rojas Ollarves
Saludos chicos les dejo este link muy util para enriquezer esta clase.
Francisco Garcia [C6]
center, centra la cadena de caracteres entre espacios o en el caracter que le pongamos como parametro
platzi.center(20) ' platzi '
platzi.center(20, 'x') 'xxxxxxxplatzixxxxxxx'
Andrés Felipe Mesa David
A summary of docstring
⭐ 👀 Docstring in Python
Docstrings are accesible from the doc attribute (__doc__) for any of the Python objects and also with the built-in help() function.
Docstrings are great for understanding the functionality of the larger part of the code. They are a descriptive text written by a programmer mainly for themselves to know what the line of code does.
Docstring vs Commenting:
doc attribute and help function.One-line Docstring
def square(a): '''Returned argument a is squared.''' #or you can use """ xxxx """ return a**a
Multi-LineDocstring
def some_function(argument1): """Summary or Description of the Function Parameters: argument1 (int): Description of arg1 Returns: int:Returning value """ return argument1
Luis Armando Aguilar Pereyra
Alguien me dice para que sirve pass?
Edwar Baron
Team Platziel pass en python se usa cuando creas bloques de codigo sin intrucciones, aqui puedes verlo mejor ref_keyword_pass
Luis Armando Aguilar Pereyra
Muchas gracias :D
Para limpiar en el cmd de windows usa:
>>> import os >>> clear = lambda: os.system('cls') >>> clear()
y despues ya puedes usar solo
>>> clear()
Mi código comentado de este ejercicio, espero les sirva 😎👍
#Métodos para maipular strings print("#Métodos para maipular strings") var_string = "var_string = Initial text" print (var_string) print('-'*75) new_string = var_string.upper() print ("var_string.upper = ", new_string, " | Convert text to capital letters" ) print('-'*75) new_string = var_string.lower() print ("var_string.lower = ", new_string, " | Convert text to lowercase letters" ) print('-'*75) new_string = var_string.find("a") print ("var_string.find('a') = ", new_string, " | Show the first character´s position in the text string, is case sensitive " ) new_string = var_string.find("i") print ("var_string.find('i') = ", new_string, " | Remember is case sensitive " ) new_string = var_string.find("z") print ("var_string.find('z') = ", new_string, " | If there´s not a character the result is -1 " ) print('-'*75) new_string = var_string.capitalize() print ("var_string.capitalize = ", new_string, "| Convert the first character of the string into a capital letter") print('-'*75) if var_string.startswith('i'): print("if var_string.endswith('i'): print ('it´s true, te strings starts with: 'i' ')") print('it´s true, te strings ends with: "i"') print('-'*75) if var_string.endswith('t'): print("if var_string.endswith('t'): print ('it´s true, te strings ends with: 't' ')") print('it´s true, te strings ends with: "t"') print('-'*75) print('-'*75) #Operadores de pertenencia, nos permiten sabes si un substring, es decir una subsecuencia se encuentra en la secuencia mayor #Por ejemplo la subsecuencia col esta dentro de colombia #Distingue entre maysuculas y minusculas print ("Operadores de pertenencia") var_string = "Hola" print ('var_string = "Hola"') if "Ho" in var_string : print('if "Ho" in var_string :') print('The substring "Ho" is into the string "Hola" ') print('-'*75) if "mundo!" not in var_string : print('if "mundo!" not in var_string :') print('var_string += "mundo!"') var_string += " mundo!" print("var_string = ", var_string) #La función global dir nos dice los métodos que podemos utilizar dentro de un objeto print('-'*75) print('The dir() function, show us all the methods that we can use with an element') print('For example:') print('dii(car_string)') print ( dir(var_string) ) print('-'*75) print('-'*75) def my_function(): """Este es un texto de ayuda de como utilizar esta funcion""" pass print(help(my_function)) print('-'*75) print("Presiona enter para salir") input()