logo

Compruebe si la cadena tiene carácter en Python

Una de las operaciones más frecuentes en todo lenguaje de programación es determinar si una cadena determinada contiene una subcadena. Python tiene numerosos métodos para determinar si una cadena determinada contiene un carácter. El operador 'in' de Python, que sirve como herramienta para operaciones de comparación, es la forma más rápida y sencilla de determinar si una cadena de Python incluye un carácter. Verificar si una cadena incluye una subcadena también se beneficia del uso de otras funciones de Python como find(), index(), count() y otras.

Usando el operador 'in' de Python

El operador 'in' de Python es la forma más rápida y sencilla de determinar si una cadena comprende una subcadena o no. Si la cadena tiene los caracteres, esta operación devuelve un valor booleano verdadero; de lo contrario, devuelve falso.

Código

 # Python program to show how to use the in operator to check if a string contains a substring # Creating a string str='Python Tutorial' print('The string 'tut' is present in the string: ', 'Tut' in str) 

Producción:

 The string 'tut' is present in the string: True 

Si la cadena dada como argumento de la izquierda se incluye dentro de la cadena dada como argumento de la derecha, el operador 'in' da Verdadero. Acepta dos parámetros, uno a cada lado. El operador 'in' de Python trata las letras mayúsculas y minúsculas por separado, ya que distingue entre mayúsculas y minúsculas.

Usando la función __contains__()

La función __contains__() de la clase String de Python también proporciona una manera de determinar si la cadena dada contiene o no una subcadena. La operación 'in' de Python llama al método __contains__() cuando se usa implícitamente. Cuando un objeto de clase aparece en el lado derecho de los operadores 'en' y 'no en', el comportamiento se define mediante el método __contains__. Aunque podemos, elegimos no utilizar este método explícitamente. Aunque las funciones con guiones bajos como primer carácter se consideran semánticamente privadas, se recomienda utilizar operadores 'in' para facilitar la lectura.

Código

 # Python program to show how to use the __contain__ method to check if a string contains a substring # Creating a string string = 'Python Tutorial' print('The string 'tut' is present in the string: ', string.__contains__('Tut')) 

Producción:

 The string 'tut' is present in the string: True 

Usando el método str.find() de Python

También puedes emplear la técnica string.find(). La función find() determina si existe una subcadena en la cadena dada. Si lo encuentra, la función find() devuelve -1; de lo contrario, proporciona el índice inicial de la subcadena dentro de la cadena.

Código

 # Python program to find a character in a string and get its index # Creating a string string = 'Python Tutorial' index = string.find('T') if index != -1: print('The character 'T' is present in the string at: ', index) else: print('The character is not present in the string') 

Producción:

edad de pete davidson
 The character 'T' is present in the string at: 7 

Este enfoque es aceptable; sin embargo, usar str.find() es una forma menos pitónica de completar esta tarea. Aunque es más largo y algo más confuso, cumple la tarea.

Usando el método str.count()

Utilice la función count() de Python si desea contar las instancias de una subcadena particular dentro de una cadena. La función da 0 si no puede encontrar la subcadena o el carácter en la cadena dada.

Código

 # Python program to check a character is present in the string using the count() function # Creating a string string = 'Python Tutorial' count = string.count('o') if count != 0: print(f'The character 'o' is present in the string {count} times.') else: print('The character is not present in the string') 

Producción:

 The character 'o' is present in the string 2 times.