2016-04-21 3 views
-2

У меня есть следующие строки, например: '24499 ? 00:02:05 sys-yg-ys'Python - как проверить, заканчивается ли строка определенной строкой?

Как я могу проверить, если строка заканчивается строкой, которую я получил из результата функции (например sys-yg-ys)?

Я попробовал следующее (просто проверить, легкий случай) на строке выше: результат = '', если (line.endswith ('YS', длина (линия) -2, длина (линия) -1)): result = 'true'

, но я не понял, когда оцениваю результат.

+2

В будущем вы можете захотеть начать поиск основных уроков. http://www.tutorialspoint.com/python/python_strings.htm содержит все ответы, которые вам нужны. – Aziuth

+2

Точный заголовок вашего вопроса (включая опечатку) дает много полезных результатов. – TigerhawkT3

ответ

-1

вы могли бы использовать

string.find("substring") 

Это должно сделать это

+0

Это также будет соответствовать строкам, которые содержат заданную подстроку в другом месте строки, а не только в конце. – TigerhawkT3

+0

Да, но, глядя на ваши данные, вам не нужно беспокоиться о том, что sys-yg-ys появляются в любой части, но в конце строки, поэтому она по-прежнему безопасна в использовании, если вы знаете, как будут выглядеть ваши данные , – MNM

1
re.match(r"^.+(sys-yg-ys)$", string) 
+0

Регулярное сильное переполнение для этого. – TigerhawkT3

0

попробовать это:

line = ' 24499 ? 00:02:05 sys-yg-ys' 
result = False 
print("Before test: " + str(result)) 
result = line.endswith('ys') 
print("After test: " + str(result)) 

выход:

Before test: False 
After test: True 

Почему вы хотите добавить параметр «старт» и «конец»?

Смежные вопросы