Уведомления

Группа в Telegram: @pythonsu

#1 Окт. 11, 2018 15:28:05

clipper1995
Зарегистрирован: 2018-03-19
Сообщения: 15
Репутация: +  0  -
Профиль   Отправить e-mail  

Поиск подстроки в строке с указанием кортежа значений

Всем привет.

Известно, что функции поиска startswith() и ensswith() могут принимать кортеж, а не одно значение:

 print("abcdefg".startswith(("0","1")))              # False
print("abcdefg".startswith(("a","1")))              # True


а вот вопрос, есть ли функция, которая также принимает кортеж, но ищет как in ('содержит'), я смог только так написать:

 print(any((item in"abcdefg") for item in("0","1"))) # False
print(any((item in"abcdefg") for item in("cde","1")))# True

Не смог найти функцию, которая работает с кортежем как startswith() и ensswith() , но ищет как выражение in, без цикла как у меня.

Отредактировано clipper1995 (Окт. 11, 2018 16:00:28)

Офлайн

#2 Окт. 11, 2018 16:44:01

JOHN_16
От: Россия, Петропавловск-Камчатск
Зарегистрирован: 2010-03-22
Сообщения: 3292
Репутация: +  221  -
Профиль   Отправить e-mail  

Поиск подстроки в строке с указанием кортежа значений

а в чем проблема написать такую свою? Которая делает ровно то что вам надо



_________________________________________________________________________________
полезный блог о python john16blog.blogspot.com

Офлайн

#3 Окт. 12, 2018 02:17:27

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 10022
Репутация: +  857  -
Профиль   Отправить e-mail  

Поиск подстроки в строке с указанием кортежа значений

  
>>> import re
>>> 
>>> re.search(r'0|1|cde', 'abcde') is not None
True
>>> re.search(r'0|1', 'abcde') is not None
False
>>>

clipper1995
  
print(any((item in"abcdefg") for item in("0","1"))) # False
print(any((item in"abcdefg") for item in("cde","1")))# True

  
>>> def search_strlist(text, strings):
...     return any(i in text for i in strings)
... 
>>> search_strlist('abcde', ['0', '1'])
False
>>> search_strlist('abcde', ['0', 'cde', '1'])
True
>>>



Отредактировано py.user.next (Окт. 12, 2018 02:23:38)

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version