Utiliza el método endswith()
En este paso, profundizarás en el método endswith()
y explorarás sus diversas aplicaciones. El método endswith()
es una herramienta poderosa para comprobar si una cadena termina con un sufijo específico. Devuelve True
si la cadena termina con el sufijo especificado y False
en caso contrario.
Continuemos con el archivo suffix_example.py
del paso anterior. Modificaremos el script para hacerlo más interactivo.
-
Abre el archivo suffix_example.py
en el editor de VS Code.
-
Modifica el código para solicitar al usuario un nombre de archivo y luego comprobar si termina con .txt
:
filename = input("Enter a filename: ")
if filename.endswith(".txt"):
print("The file is a text document.")
else:
print("The file is not a text document.")
Este código utiliza la función input()
para obtener un nombre de archivo del usuario. Luego, utiliza el método endswith()
para comprobar si el nombre de archivo termina con .txt
.
-
Guarda el archivo suffix_example.py
.
-
Ejecuta el script:
python suffix_example.py
El script te pedirá que ingreses un nombre de archivo.
Enter a filename:
-
Ingresa my_document.txt
y presiona Enter. Deberías ver la siguiente salida:
The file is a text document.
-
Ejecuta el script nuevamente e ingresa my_document.pdf
. Deberías ver la siguiente salida:
The file is not a text document.
Ahora, exploremos la sensibilidad a mayúsculas y minúsculas del método endswith()
.
-
Abre el archivo suffix_example.py
en el editor de VS Code.
-
Modifica el código para comprobar .TXT
(en mayúsculas):
filename = input("Enter a filename: ")
if filename.endswith(".TXT"):
print("The file is a text document (uppercase).")
else:
print("The file is not a text document (uppercase).")
-
Guarda el archivo suffix_example.py
.
-
Ejecuta el script:
python suffix_example.py
-
Ingresa my_document.txt
y presiona Enter. Deberías ver la siguiente salida:
The file is not a text document (uppercase).
Esto demuestra que el método endswith()
es sensible a mayúsculas y minúsculas. Para realizar una comprobación insensible a mayúsculas y minúsculas, puedes convertir la cadena a minúsculas utilizando el método lower()
antes de usar endswith()
.
filename = input("Enter a filename: ")
if filename.lower().endswith(".txt"):
print("The file is a text document (case-insensitive).")
else:
print("The file is not a text document (case-insensitive).")
Este código modificado identificará correctamente my_document.txt
como un documento de texto, independientemente de las mayúsculas y minúsculas del sufijo.