Duda con los condicionales pyton

Iniciado por ferchundo9, 22 Octubre 2018, 05:27 AM

0 Miembros y 1 Visitante están viendo este tema.

ferchundo9

MI duda es simple, hay alguna forma de comparar dos cadenas ignorando parte de ellas, es decir:

CADENA= "pez.txt"

if cadena =="pez.*"

siendo el "*" la parte ignorada

EdePC

Saludos,

- Para comprobar la existencia de un Sub-String dentro de un String puedes utilizar "in":

Código (python) [Seleccionar]
cadena = "pez.txt"

if "pez." in cadena :
  print("cadena contiene pez.")


- También puedes echar mano de expresiones regulares:

Código (python) [Seleccionar]
import re
cadena = "pez.txt"

if re.match("pez.*", cadena) :
  print("cadena contiene pez.")

tincopasan

el error que estas cometiendo no es en el condicional, sino en la lógica de los objetos que estas comparando, es como preguntar:
si casa es igual a ventana
que claro no lo es, entonces la pregunta más correcta sería:
si hay ventana en casa
y para eso hay muchas formas, ya te dieron dos, bueno modifico una y agrego dos más:

Código (python) [Seleccionar]

#-*- coding: utf -8 -*-

cadena="pez.txt"

if cadena[:3] == "pez":
    print("bien 1")
if "pez in cadena":
    print("bien 2")
if cadena.startswith("pez"):
    print("bien 3")

import re
encontrar=re.compile(r"pez")

if encontrar.match(cadena):
    print("bien 4")