Една от най-честите операции във всеки език за програмиране е определянето дали даден низ съдържа подниз. Python има множество методи за определяне дали даден низ съдържа символ. Операторът „in“ на Python, който служи като инструмент за операции за сравнение, е най-бързият и лесен начин да определите дали низ на Python включва знак. Проверката дали даден низ включва подниз също се възползва от използването на други функции на Python като find(), index(), count() и други.
Използване на оператора 'in' на Python
Операторът 'in' на Python е най-бързият и лесен начин да определите дали даден низ съдържа подниз или не. Ако низът съдържа знаците, тази операция връща булево значение true; в противен случай връща false.
Код
метод на java substring
# 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)
Изход:
The string 'tut' is present in the string: True
Ако низът, даден като ляв аргумент, е включен в низа, даден като десен аргумент, операторът 'in' дава True. Приема два параметъра, по един от всяка страна. Операторът 'in' на Python третира главните и малките букви поотделно, тъй като е чувствителен към главни и малки букви.
Използване на функцията __contains__().
Функцията __contains__() на класа String на Python също предоставя начин да се определи дали даденият низ съдържа или не подниз. Операцията 'in' на Python извиква метода __contains__(), когато се използва имплицитно. Когато обект от клас се появи от дясната страна на операторите „in“ и „not in“, поведението се определя от метода __contains__. Въпреки че можем, ние избираме да не използваме изрично този метод. Въпреки че функциите с долна черта като първи знак се считат за семантично частни, препоръчително е да използвате оператори „in“ за четливост.
Код
# 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'))
Изход:
The string 'tut' is present in the string: True
Използване на метода str.find() на Python
Можете също да използвате техниката string.find(). Функцията find() определя дали съществува подниз в дадения низ. Ако намери, функцията find() връща -1; иначе дава началния индекс на подниза вътре в низа.
Код
софтуерно тестване
# 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')
Изход:
The character 'T' is present in the string at: 7
Този подход е приемлив; използването на str.find() обаче е по-малко Pythonic начин за изпълнение на тази задача. Въпреки че е по-дълъг и малко по-объркан, той все пак изпълнява задачата.
Използване на метода str.count().
Използвайте функцията count() на Python, ако искате да преброите екземплярите на конкретен подниз в рамките на низ. Функцията дава 0, ако не може да намери подниза или знака в дадения низ.
опитайте catch catch java
Код
# 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')
Изход:
The character 'o' is present in the string 2 times.