#python
#python
Вопрос:
names = ["Adam", "Maria", "Kevin", "Madison", "John", "Bailey"]
Я хочу, чтобы все элементы в этой строке печатались, кроме имен, начинающихся с буквы M. Как мне это сделать. Я только что начал онлайн-курс и пытаюсь разобраться в этой части. Я пересмотрел некоторые видео и, похоже, пропустил информацию, которая выведет на печать все, что не начинается с M.
Комментарии:
1. Попробуйте создать строку и посмотрите, как вы можете индексировать, чтобы печатать только определенную букву строки. Как только вы это выясните, вы можете просто использовать цикл.
2.
[x for x in names if not x.startswith("M")]
3. Мы не делаем вам домашнюю работу. Учитывая строку, как вы получаете ее первый символ? Как вы проверяете, является ли этот первый символ M?
Ответ №1:
Попробуйте это:
for name in names:
if not name.startswith('M'):
print(name)
Если вы также хотите проверить наличие строчных m
букв, вы можете сделать if not name.lower().startswith('m'):
это вместо этого.
Комментарии:
1. Спасибо за информацию, я посмотрю, как это получится.
Ответ №2:
names = ["Adam", "Maria", "Kevin", "Madison", "John", "Bailey"]
for name in names:
if name[0] == 'M':
continue
print(name)
Комментарии:
1. Дружественный совет: это можно упростить (как с точки зрения кода, так и с точки зрения интерпретации) с помощью
!=
оператора; таким образом, удаляяcontinue
и печать при проверке на True .2. Я ценю предложения по этому поводу. Я проверю это.