Как вы выбираете строчные и прописные символы в строке, используя оператор if-else в Python? - PullRequest
0 голосов
/ 04 апреля 2019

Я пытаюсь решить проблему, в которой я хочу выбрать несколько слов, начинающихся с 's', но в выводе должны быть указаны как строчные, так и прописные слова.

Чтобы попытаться достичь желаемого результата, я использовал оператор if-else в цикле for, но он выбрал только первое выбранное значение. Например, если я сначала написал «S», он выбрал прописные буквы и проигнорировал строчные.

st = 'Sally sells shakes from Shake Shack every Saturday.'

for i in st.split():
 if i[0] == 's' and 'S':
        print(i)

Я ожидал, что результат будет: Продам озноб Салли Встряска лачуга Суббота

Но фактический результат был: Продам трясет

Ответы [ 2 ]

2 голосов
/ 04 апреля 2019

Вы можете использовать lower() для сравнения строчных букв:

st = 'Sally sells shakes from Shake Shack every Saturday.'

for i in st.split():
    if i.lower().startswith('s'):
        print(i)

Результат:

Sally
sells
shakes
Shake
Shack
Saturday.
1 голос
/ 04 апреля 2019

использовать логическое ИЛИ : вернуть True, если одно из утверждений истинно: ваше слово будет начинаться с 'S' или 's'

ПРИМЕЧАНИЕ: i [0] == 's' и 'S', в этом случае неправильное выражение

ЗАЯВЛЕНИЕ1: i [0] == 's'

ЗАЯВЛЕНИЕ2: i [0] == 'S'

если ЗАЯВЛЕНИЕ1 или ЗАЯВЛЕНИЕ2

st = 'Sally sells shakes from Shake Shack every Saturday.'

for i in st.split():
   if i[0] == 's' or i[0] == 'S':
       print(i)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...