Проверка начала строки с XXXX

Я хотел бы знать, как проверить, начинается ли строка с "привет" в Python.

В Bash я обычно делаю:

if [[ "$string" =~ ^hello ]]; then
 do something here
fi

Как я могу добиться того же в Python?

Ответ 1

aString = "hello world"
aString.startswith("hello")

Подробнее о startwith

Ответ 2

RanRag уже ответил на ваш конкретный вопрос.

Однако, в общем, что вы делаете с

if [[ "$string" =~ ^hello ]]

- регулярное совпадение. Чтобы сделать то же самое в Python, вы бы сделали:

import re
if re.match(r'^hello', somestring):
    # do stuff

Очевидно, что в этом случае somestring.startswith('hello') лучше.

Ответ 3

Если вы хотите сопоставить несколько слов с вашим волшебным словом, вы можете передать слова для сопоставления в виде кортежа:

>>> magicWord = 'zzzTest'
>>> magicWord.startswith(('zzz', 'yyy', 'rrr'))
True

Примечание: startswith берет str or a tuple of str

Смотрите документы.

Ответ 4

Можно также сделать это.

regex=re.compile('^hello')

## THIS WAY YOU CAN CHECK FOR MULTIPLE STRINGS
## LIKE
## regex=re.compile('^hello|^john|^world')

if re.match(regex, somestring):
    print("Yes")